/* Basic styling for the body */
/* "window.location.href='main.html';" */

* {
  box-sizing: border-box;
}

body, html { 
    margin: 0;
    padding: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    height: 100%;
  }

/* No underline class for links */
.no-underline {
    text-decoration: none;
    color: #476bfd;
    font-weight: 600;
}

.no-underline:hover {
  color: #1a47fb;
}

::-webkit-scrollbar {
    display: none;
}

#dashboard-body {
    overflow: hidden;
    background-image: url('image15.jpg');
    background-size: cover; 
    background-repeat: no-repeat; 
    background-position: center; 
    /* background: linear-gradient(140deg, #73a5f5, #e8a49e); */

    background: #6480f0bf;

}
  
  /* Parallax effect section with dot pattern */
.background {
    height: 100vh; /* Full viewport height */
    background-color: #ffffff;
    
    /* Create the repeating dot pattern */
    background-image: radial-gradient(black 3px, transparent 3px); /* black dots */
    background-size: 100px 100px; /* Space between dots */
    
    /* Parallax scrolling effect */
    background-attachment: fixed; /* Fixes background, so it scrolls slower */
    background-position: center;
    background-repeat: repeat;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  }
  
#start-btn {
    display: flex;
    width: fit-content;
    font-size: 20px;
    margin-top: 75px;
    margin-left: auto;
    margin-right: auto;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 10px 20px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
    cursor: pointer;
}

#start-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #e6ff77;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

#start-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#signup-btn-container {
    display: flex;
    flex-direction: column;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

#login-btn-container {
    display: flex;
    flex-direction: column;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

#signup-submit-btn {
    display: flex;
    height: 40px;
    width: 130px;
    font-size: 20px;
    margin-top: 400px;
    margin-left: 30px;
    margin-right: auto;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

#login-submit-btn {
    display: flex;
    height: 40px;
    width: 130px;
    font-size: 20px;
    margin-top: 180px;
    margin-left: 30px;
    margin-right: auto;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

#login-submit-btn:hover,
#signup-submit-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #e6ff77;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

#login-submit-btn:active,
#signup-submit-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#cancel-btn {
    display: flex;
    height: 30px;
    width: fit-content;
    font-size: 15px;

    margin-bottom: 20px;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

#cancel-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #ff9577;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

#cancel-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#back-btn {
    display: flex;
    height: 40px;
    width: 130px;
    font-size: 20px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

#back-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #77c6ff;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

#back-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#peek-btn {
    display: flex;
    height: 40px;
    width: 130px;
    font-size: 20px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

#peek-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #f599b6;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

#peek-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#about-btn-container {
display: flex;
flex-direction: column;
}

.signup-login-btn {
    display: flex;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    height: 40px;
    width: 130px;
    font-size: 20px;
    align-items: center;
    justify-content: center;
    background-color: white;
    color: black;
    padding: 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease, color 1s ease;
    cursor: pointer;
}

.signup-login-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #e6ff77;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

.signup-login-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#neither-btn:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    background-color: #b1c6ff;
    /* color: white; */
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1.5s ease, color 0.5s ease;
}

#neither-btn:active {
    transform: translateX(-4px);
    box-shadow: 0px 0px 0px black;
    background-color: #ffb0b0;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.container2 {
    display: flex;
    height: fit-content;
    width: fit-content;
    font-size: 20px;
    font-weight: 500;
    align-items: center;
    margin-top: 75px;
    margin-left: 55%;
    margin-right: 20px;
    background-color: white;
    color: black;
    padding: 5px 20px;
    border: 2px solid black;
    border-radius: 5px;
    background: white;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    cursor: default;
}

.container2:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

#tility-logo {
height: 70px;
margin-right: 5px;
opacity: 0.9;
}

#title-container {
    display: flex;
    flex-direction: column;
    height: fit-content;
    width: 300px;

    justify-content: center;
    align-items: center;

    margin-left: 20%;
    margin-top: 0;
    margin-right: 10px;
    border: 2px solid black;
    border-radius: 5px;
    padding: 10px;
    background: #ffffff;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;

    font-size: 40px;
    font-family: "Chicle", serif;

    cursor: default;
}

#title-container:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

#title-text-sup {
    font-size: 20px;
}

#title-text-container {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 20px;
    /* flex-direction: column; */
}

#title-pre-text {
    display: flex;
    font-size: 13px;
    font-weight: 300;
    margin-right: auto;
    margin-bottom: 5px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

#title-post-text {
    display: flex;
    font-size: 13px;
    font-weight: 300;
    margin-left: auto;
    margin-top: 5px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.category-badge,
.filter-badge {
    position: absolute;
    top: -6px;
    right: -6px;
    background-color: #fec8c5;
    color: #ff0909;
    border-radius: 50%;
    height: 18px;
    width: 18px;
    font-size: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    box-shadow: 0 0 2px black;
    border: 1px solid rgba(0, 0, 0, 0.21);
    padding: 0 4px;
}

/* !!! signup page styling !!! */

#signup-container {
    font-size: 15px;
    height: fit-content;
    width: fit-content;
    margin-top: 0;
    margin-right: auto;
    border: 2px solid black;
    border-radius: 5px;
    padding: 20px;
    background: white;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

#login-container {
    font-size: 15px;
    height: fit-content;
    width: 400px;
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    border: 2px solid black;
    border-radius: 5px;
    padding: 20px;
    background: white;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

#forgot-password-link {
margin-top: 20px;
text-align: right;
text-decoration: none;
}

#login-container:hover,
#signup-container:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.input-group {
    display: flex;
    flex-direction: column;
}

.input-group {
    margin: 0;
    font-weight: light;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

.input-group input[type="text"],
.input-group input[type="email"],
.input-group input[type="password"],
.input-group input[type="date"] {
    width: 100%;
    margin-top: 5px;
    border: 2px solid black;
    border-radius: 5px;
    padding: 8px;
    box-sizing: border-box;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;

}

.input-group input[type="text"]:hover,
.input-group input[type="email"]:hover,
.input-group input[type="password"]:hover,
.input-group input[type="date"]:hover {
    transform: translateX(-1px);
    background: #b0e3ff;
    backdrop-filter: blur(10px) brightness(0.8);
    -webkit-backdrop-filter: blur(10px) brightness(0.8);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.input-group input[type="text"]:active,
.input-group input[type="email"]:active,
.input-group input[type="password"]:active,
.input-group input[type="date"]:active {
    transform: translateX(-3px);
    background: #b0e3ff;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

.input-group input[type="text"]:focus,
.input-group input[type="email"]:focus,
.input-group input[type="password"]:focus,
.input-group input[type="date"]:focus {
    transform: translateX(-1px);
    background: #b0e3ff;
    backdrop-filter: blur(10px) brightness(0.8);
    -webkit-backdrop-filter: blur(10px) brightness(0.8);
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

/* checkbox styling */
.input-group-box {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 10px;
}

.checkbox {
  margin: 0 10px 0 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid #476bfd;
  outline: none;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
}

.checkbox:checked {
  background-color: #476bfd;
}

.checkbox:checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: white;
}

/* !!! Main dashboard CSS !!! */

.background2 {

    /* background: linear-gradient(144deg, #5900ff96, #19b9b1); */

    background: #5370e344;

    /* background: linear-gradient(144deg, #4d32fd 50%, #00dbeb);
    backdrop-filter: blur(10px) brightness(0.8);
    -webkit-backdrop-filter: blur(10px) brightness(0.8); */
    
    /* background-size: 200%;
    background-position: left;
    border: 0;
    justify-content: center;
    transition: background-position 10s ease; */
    z-index: -1;
}

/* .background2:hover {
    background-position: right;
    transition: background-position 10s ease;
} */

/* Left and Right Columns */
.left-column, .right-column {
    position: fixed;
    bottom: 0; /* Aligns the divs with the bottom of the page */
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}
  
  .left-column {
    width: 35%; /* handles column layout */
    left: 0;
  }

  .center-column {
    width: 30%; /* handles column layout */
  }
  
  .right-column {
    width: 35%; /* handles column layout */
    right: 0;
  }
  
  .box {
    /* the boxes in both columns will always fill to 100% */
    height: 100%;
    margin: 10px 0px 0px 0px;
  }

#right-column-box {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 20px); /* Viewport height minus margins */
    margin-top: 10px;
    margin-right: 10px;
    margin-bottom: 10px;
    overflow: hidden; /* Hide overflowing content */
    position: relative;
}

  #market-status-container {
    height: fit-content;
    margin-right: 10px;
    border-radius: 10px;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
  }
  
/* Center Column (Scrollable Content) */
.center-column {
position: relative;  /* Allows free scrolling */
margin: 0 auto;
padding: 10px;
overflow-y: scroll;
height: 100vh;
box-sizing: border-box;
}
  
.content-box {
display: flex;
flex-direction: column;
height: fit-content;
margin: 10px 0;
padding: 10px 10px;

cursor: pointer;
}

.content-header {
display: flex;
justify-content: space-between;
padding: 0 0 10px 0;
}

.content-footer {
    height: 20px;
display: flex;
align-items: center;
gap: 10px;
justify-content: flex-end;
margin-left: auto;
margin-top: 10px;

background-color: #5a9fe851;
border-radius: 5px;
padding: 2px 10px;

border: 1px solid rgba(0, 0, 0, 0.21);
box-shadow: 0 0 1px black;
}

.prediction-content-footer-container {
    display: flex;
    margin-top: 10px;
}

.prediction-content-footer {
    height: 20px;
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
 
    margin-left: auto;
    width: fit-content;
    
    background-color: #5a9fe85b;
    border-radius: 5px;
    padding: 2px 10px;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 1px black;
    }

.prediction-content-footer2 {
    display: flex;
}

.upvote-btn, .downvote-btn {
cursor: pointer;
background: none;
border: none;
transition: transform .2s ease;
}

.upvote-btn:hover, 
.downvote-btn:hover {
transform: scale(1.15);
}

.upvote-btn:active {
transform: translateY(-5px);
transition: transform .1s ease;
color: #3f58d7;
}

.downvote-btn:active {
transform: translateY(5px);
transition: transform .1s ease;
color: #f47171;
}

.upvote-btn.voted {
    color: #3f58d7;

}

.downvote-btn.voted {
    color: #f47171;
}

.vote-count {
font-weight: 500;
font-size: 15px;
}

#no-prediction-notice {
    display: flex;
    flex-direction: column;
    font-size: 15px;
    color: black;

    padding: 10px 10px;
    
    border: none;
    border-radius: 5px;
    background-color: #c7cd573f;
    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    box-shadow: 0 0 2px black;
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

#no-prediction-span {
    font-weight: 600;
}

/* .content-btn {
display: flex;
font-size: 10px;
width: fit-content;
color: black;

justify-content: center;

border: none;
padding: 5px 10px;

border-radius: 50px;
background-color: #33bbffa1;
}

.content-btn:hover {
background-color: #daff33f0;
transition: box-shadow 0.4s ease, background-color .5s ease, transform 0.2s ease;
}

.content-btn:active {
    transform: translateY(-3px);
} */

#date {
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 1px black;
    background: #f5e3a699;
    border-radius: 5px;
    padding: 5px 10px;
    border-top-left-radius: 50px;
    border-bottom-left-radius: 50px;
}

#iv {
    font-size: 13px;
    height: 16px;
    background-color: #00d5ffa1;
    border-radius: 5px;
    padding: 2px 5px;
}

#ticker, 
#date, 
#title 
 {
    font-size: 15px;
}

#follow, 
#vote, 
#predict {
    font-size: 15px;
    margin: 0 5px;
}

#ticker {
    background: #f66eb291;
    align-items: center;
    border-radius: 5px;
    padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 1px black;
    text-transform: uppercase;

    font-weight: 450;
}
/* Basic follow button styling */
.follow-btn {
    background: none;
    display: flex;
    border: none;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.follow-btn .material-symbols-outlined {
    font-size: 18px; /* Adjust to desired size */
    color: black; /* Default unfilled state */
    transition: color 0.3s ease;
}

.follow-btn:active {
    transform: translateY(-3px);
    transition: transform 0.1s ease;
}

/* Colored eye for followed state */
.follow-btn.followed .material-symbols-outlined {
    color: #be3fd7;
}

.follow-count {
    font-size: 15px;
}

#content-button-group {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-left: auto;
    width: 181px;
}


.tile-view-header, 
.tile-view-footer {
  display: flex;
  justify-content: space-between;
}

#tile-view-date {
display: flex;
font-size: 15px;
margin: 20px 20px 10px 20px;
margin-right: auto;

/* border: 1px solid rgba(0, 0, 0, 0.21);
box-shadow: 0 0 2px black;
background: #eb318e2e;
border-radius: 5px;
padding: 5px 10px; */

}
#expiry-date-text,
#post-date-text {
border: 1px solid rgba(0, 0, 0, 0.21);
border-left: none;
border-right: none;
box-shadow: 0 0 2px black;
background: #eb318e2e;
padding: 5px 10px;
}

#days-until-text {
margin-right: auto;
border: 1px solid rgba(0, 0, 0, 0.21);
border-left: none;
box-shadow: 0 0 2px black;
background: #eb318e1b;
padding: 5px 15px 5px 10px;
border-top-right-radius: 50px;
border-bottom-right-radius: 50px;
color: #7c1b43;
}

.tile-view-footer {
display: flex;
justify-content: space-between; /* Ensures IV on the left and buttons on the right */
align-items: center; 
width: 100%;
margin-top: auto; /* Keeps footer at the bottom */
}

#tile-view-button-group {
margin-top: auto;
display: flex;
}

#tile-view-ticker {
font-size: 15px;
text-transform: uppercase;

width: fit-content;

padding: 5px 10px;
border: 1px solid rgba(0, 0, 0, 0.21);
border-top-left-radius: 5px;
border-bottom-left-radius: 5px;
box-shadow: 0 0 2px black;

background: #eb318e68;
}

#tile-view-title  {
margin: 10px 20px;
font-size: 20px;
flex-shrink: 0; /* Prevent title from shrinking */
}

#tile-view-summary {
    flex: 1 1 auto;    /* Allow to grow and shrink */
    min-height: 0;     /* Allow to shrink below content size */
    overflow-y: auto;  /* Enable scrolling when content overflows */
    flex-grow: 1;
    margin: 10px 20px;
    font-size: 15px;
    overflow-wrap: break-word;
    font-size: 15px;
    overflow-y: auto; 
    /* max-height: calc(100vh - 353px); */

    position: relative;
    -webkit-mask-image: linear-gradient(to bottom, black, black 90%, transparent);
    mask-image: linear-gradient(to bottom, black, black 90%, transparent);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-clip: padding-box;
    }

#tile-view-summary.hidden {
    display: none;
}


.dashboard-box-styling {
display: flex;
font-size: 20px;
color: black;

border: none;
border-radius: 5px;
background-color: #57c5cd22;
backdrop-filter: blur(10px) brightness(1.4);
-webkit-backdrop-filter: blur(0px) brightness(0.8);
box-shadow: 0 0 2px black;
transition: box-shadow 0.1s ease, background-color 0.4s ease, transform .1s ease;

/* border: 2px solid black; */
/* box-shadow: -3px 3px 0px black;
transition: transform 0.4s ease, box-shadow 0.4s ease; */
}

.dashboard-content-box-styling {
    display: flex;
    font-size: 20px;
    color: black;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    background-color: #57c5cd49;
    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    box-shadow: 0 0 2px black;
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

.dashboard-content-box-styling:hover {
    transform: scale(1.02);
    box-shadow: 0 0 5px black;
    /* background-color: #57c5cd70; */
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
    overflow: visible;
}

.dashboard-content-box-styling:active {
    transform: scale(0.99);
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

.prediction-tile {
    display: flex;
    font-size: 20px;
    color: black;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    background-color: #c7cd573f;
    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    box-shadow: 0 0 2px black;
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

.prediction-tile:hover {
    transform: scale(1.02);
    box-shadow: 0 0 5px black;
    /* background-color: #c7cd576f; */
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
    overflow: visible;
}

.prediction-tile:active {
    transform: scale(0.99);
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

/* Style for tiles with past dates */
.past-date-tile {
background-color: #ff646428 !important;

/* border: 1px solid #f63535d1;
border-left: 5px solid #ff6464d1; */

transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}
  
.past-date-tile:hover {
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

.prediction-tile-target-price {
    display: flex;
    font-size: 15px;

    height: fit-content;
    width: fit-content;

    background-color: #a9c1f9a7;
    padding: 2px 15px 2px 10px;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    border-left: none;
    box-shadow: 0 0 1px black;
    
}

.prediction-tile-user {
    display: flex;
    font-size: 15px;

    height: fit-content;
    width: fit-content;

    background-color: #4a7cf165;
    padding: 2px 10px;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    border-right: none;
    box-shadow: 0 0 1px black;

}

.prediction-input-column {
    display: flex;
    flex-direction: column;
}

.blank-box-styling {
    display: flex;
    font-size: 20px;
    color: black;
    border: 2px solid black;
    border-radius: 5px;
    background-color: #ffffff;
    backdrop-filter: blur(10px) brightness(0.8);
    -webkit-backdrop-filter: blur(30px) brightness(0.8);
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    }
    
    .blank-box-styling:hover {

    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    }  

#profile-container {

    margin: 10px 0 0 10px;
    height: 50px;
    padding: 10px 10px 10px 5px;
    cursor: pointer;

    border-radius: 10px;
    border-top-left-radius: 50px;
    border-bottom-left-radius: 50px;
    overflow-x: scroll;
}

#profile-container:hover {
    transform: scale(1.01);
    box-shadow: 0 0 5px black;
    transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
    overflow-x: scroll;
}

#profile-container:active {
transform: scale(1.0);
transition: box-shadow 0.3s ease, background-color 0.3s ease, transform .3s ease;
}

#misc-container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    flex: 1 1 auto; /* flex-grow: 1, flex-shrink: 1, flex-basis: auto */
    min-height: 0;  /* Allows it to shrink properly when needed */
    margin-left: 10px;
    overflow: hidden; /* or auto if you want scrollbars */
  }

#chartCanvas {
    height: 100%;
    width: auto;
    margin-top: auto;
    margin-bottom: auto;
}

#chart-header {
display: flex;
margin-right: auto;
font-size: 15px;
padding: 10px;
}

#chart-header-ticker {
    border: 1px solid rgba(0, 0, 0, 0.21);
    padding: 5px 10px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;

    background: #e7f9447d;

    box-shadow: 0 0 2px black;
}

#chart-header-price {
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-left: none;
    padding: 5px 10px;

    box-shadow: 0 0 2px black;

    background: #e7f94459;
}

#chart-header-dollar-change {
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-left: none;
    padding: 5px 10px;

    box-shadow: 0 0 2px black;

    background: #e7f94442;
}

#chart-header-percent-change {
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-left: none;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    padding: 5px 15px 5px 10px;

    box-shadow: 0 0 2px black;

    background: #e7f94430;
}

#indicator-chart-header {
    display: flex;
}



.profile-data {  
    display: flex;



    font-size: 15px;



    padding: 5px 10px;
    
}

#username-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;

    padding: 4px 5px 4px 0px;

    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    border-top-left-radius: 50px;

    background-color: #ffffff52;

    margin-bottom: 5px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
}

/* #credibility-score-display,
#tility-score-display {
padding: 5px 10px;
border-right: none;
background-color: #ffffff52;
} */


.score-container {
    display: flex;
}

#profile-container-right {
    display: flex;
    flex-direction: column;
    margin-left: auto;
    justify-content: space-between;
}

/* #tility-profile-ranking,
#credibility-profile-ranking {
  

    display: flex;
    margin-bottom: 5px;
    margin-left: none;

    font-size: 15px;

    height: fit-content;
    width: fit-content;

    background-color: #fe67302d;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    padding: 5px 15px 5px 10px;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-left: none;
    box-shadow: 0 0 2px black;
} */

#about-container {
    margin: 40px auto;
    height: auto;
    width: 57vw;
    padding: 10px;
    font-size: 20px;
    align-items: center;
}


/* #profile-img {
    height: 20px;
    width: 20px;
    border-radius: 50px;
    background: #80008080;
    margin-left: auto;
} */

.profile-img, #profile-img, #prediction-profile-img {
    width: 20px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.509);
    opacity: 75%;
    height: 20px;
    border-radius: 50%;
    background-color: #3498db; /* Default color */
    display: inline-block;
}


 #navigation-button-container {
    display: flex;
    flex-direction: column;
    width: fit-content;
    height: 100%;
    margin-left: 10px;
 }

  .navigation-btn {
    display: flex;
    width: 80px;
    color: black;
    justify-content: center;
    align-items: center;

    border: none;
    padding: 5px 10px;
    border-radius: 5px;
    background-color: #57c5cd22;

    font-size: 14px;

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    cursor: pointer;

    background: linear-gradient(144deg, #4d8dfd6a, #4d8dfd1e);

    box-shadow: 0 0 2px black;
    transition: box-shadow 0.1s ease, background-color 0.4s ease, transform 0.1s ease;
}

#settings-btn {
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    margin-bottom: 5px;
    
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#settings-btn:hover {
    background: linear-gradient(144deg, #4d8dfde5, #4d8dfd69);
    scale: 1.02;
}

#settings-btn:active {
   scale: 0.99;
}

#ranking-btn {
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#ranking-btn:hover {
    background: linear-gradient(144deg, #4d8dfde5, #4d8dfd69);
    scale: 1.02;
}

#ranking-btn:active {
    scale: 0.99;
}

#watchlist-btn {
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
 

    margin-bottom: 5px;
    
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#watchlist-btn:hover {
    background: linear-gradient(144deg, #4d8dfde5, #4d8dfd69);
    scale: 1.02;
}

#watchlist-btn:active {
    scale: 0.99;
}

.navigation-btn-selected {
    background: linear-gradient(144deg, #4d8dfde5, #4d8dfd69);
}

#profile-btn {  
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    border-radius: 5px;
    transition: transform 0.4s ease;
}

#profile-btn:hover {
    background: linear-gradient(144deg, #4d8dfde5, #4d8dfd69);
}

#profile-btn {  
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    border-radius: 5px;
    transition: transform 0.4s ease;
}

#profile-btn:hover {
    background: linear-gradient(144deg, #4d8dfde5, #4d8dfd69);
}

#help-btn {  
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    margin-bottom: 5px;

    cursor: help;

    border-radius: 5px;
    transition: transform 0.4s ease;


    background: linear-gradient(144deg, #fd824d67, #fdd14d59);
}

#help-btn:hover {
    background: linear-gradient(144deg, #fd824dae, #fdd14d70);
    scale: 1.02;
}

#help-btn:active {
    scale: 0.99;
}

#logout-btn {
    height: 100%;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    
    background: linear-gradient(144deg, #ff6fbe85, #fd4dae1b);
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#logout-btn:hover {
    transform: scale(1.02);
    box-shadow: 0 0 4px black;
    background: linear-gradient(144deg, #ff6fbeb3, #fd4dae5b);
    transition: box-shadow 0s ease, background-color .4s ease, transform 0s ease;
}

#logout-btn:active {
    transform: scale(0.99);
    box-shadow: 0 0 2px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Market status element styling */

.market-status {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 5px;
    justify-content: space-between;
}

#market-status-details-container {
display: flex;
}

#market-status-text {
border: 1px solid rgba(0, 0, 0, 0.21);
border-right: none;
border-top-left-radius: 5px;
border-bottom-left-radius: 5px;
padding: 5px 10px;
box-shadow: 0 0 2px black;

background-color: #57c5cd53;
backdrop-filter: blur(10px) brightness(1.4);
-webkit-backdrop-filter: blur(0px) brightness(0.8);
}

#market-status-timer {
border: 1px solid rgba(0, 0, 0, 0.21);
border-left: none;
border-top-right-radius: 50px;
border-bottom-right-radius: 50px;
padding: 5px 15px 5px 10px;   
box-shadow: 0 0 2px black; 

background-color: #fbff7d4d;

backdrop-filter: blur(10px) brightness(1.4);
-webkit-backdrop-filter: blur(0px) brightness(0.8);
}

#statusCircle {
    align-items: center;
    width: 30px; 
    height: 30px;
    border-radius: 50%;
    background-color: gray; /* Default color */
    transition: background-color 0.3s ease; /* Smooth transition */
}

#statusText {
    font-size: 15px;
    color: #333; /* Neutral color */
}

#lower-left-container {
    display: flex;
    flex-direction: column;
    width: auto;
    margin-bottom: 10px;
}

#lower-left-box {
    display: flex;
    height: 100%;
    margin: 10px 0px 10px 10px;
    overflow-x: scroll;
   
}   

.dynamicPulse {
    animation: dynamicPulse 2s infinite;
}

/* form styling !!! */

#create-tile-form-container.hidden {
    display: none;
}

/* Form overlay to blur background */
.form-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    backdrop-filter: blur(5px); /* Background blur */
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999;
}

#form-dismiss {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1000;
}

/* Form container */
.create-tile-form {
    display: flex;
    flex-direction: column;
    width: 400px;
    border-radius: 5px;
    padding: 20px;
    color: #3d3d3d;
    z-index: 1001;


    background-color: #dff6ff;
/* 
    background-color: #57c5cd71; */
    backdrop-filter: blur(10px) brightness(1.3);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    box-shadow: 0 0px 50px rgba(0, 0, 0, 0.471);
}

/* Create tile button */
#create-tile-btn {
    margin: 0 0 0 10px;
    height: 100%;
    width: 100%;

    font-size: 14px;
    color: black;
    justify-content: center;
    border: 1px solid rgba(0, 0, 0, 0.21);
    padding: 5px 10px;
    border-radius: 5px;
    background: linear-gradient(144deg, #33bbffc9, #33bbff37);

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    cursor: pointer;

    box-shadow: 0 0 2px black;
    transition: box-shadow 0.1s ease, background-color 0.4s ease, transform 0.1s ease;
}

#create-tile-btn:hover {
    transform: scale(1.02);
    box-shadow: 0 0 4px black;
    background: linear-gradient(144deg, #33bbff, #33bbff55);
    transition: box-shadow 0s ease, background-color .4s ease, transform 0s ease;
}

#create-tile-btn:active {
    transform: scale(0.99);
    box-shadow: 0 0 2px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#create-prediction-tile-btn {
    margin: 0 0 0 10px;
    height: 100%;
    width: 100%;

    font-size: 14px;
    color: black;
    justify-content: center;
    border: 1px solid rgba(0, 0, 0, 0.21);
    padding: 5px 10px;
    border-radius: 5px;
    background: linear-gradient(144deg, #d9f349c0, #d4eb5365);

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    cursor: pointer;
    
    box-shadow: 0 0 2px black;
    transition: box-shadow 0.1s ease, background-color 0.4s ease, transform 0.1s ease;
}

#create-prediction-tile-btn:hover {
    transform: scale(1.02);
    box-shadow: 0 0 4px black;
    background: linear-gradient(144deg, #d9f349e5, #d4eb536b);
    transition: box-shadow 0s ease, background-color .4s ease, transform 0s ease;
}

#create-prediction-tile-btn:active {
    transform: scale(0.99);
    box-shadow: 0 0 2px black;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#create-tile-btn-container {
    display: flex;
    width: 100%;
    margin-right: 10px;
    /* flex-direction: column; */
}

#lower-button-container {
display: flex;
height: 100%;
width: 100%;
margin-left: 10px;
overflow: none;
flex: 1 1 auto;
}

#logout-help-button-container {
    display: flex;
    flex-direction: column;
}

#submit-tile {
    margin: 10px;
    font-size: 14px;
    outline: none;
    color: black;
    justify-content: center;
    border: none;
    padding: 5px 10px;
    border-radius: 5px;
    background-color: #d6ee9992;
    backdrop-filter: blur(10px) brightness(1.3);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
    box-shadow: 0 0 2px black;
    transition: box-shadow 0s ease, background-color 0.2s ease, transform 0.2s ease;
}

#submit-tile:hover {
    transform: scale(1.02);
    box-shadow: 0 0 4px black;
    transition: box-shadow 0.4s ease;
    background-color: #d6ee99;
    transition: box-shadow 0s ease, background-color 0s ease, transform 0s ease;
}

#submit-tile:active {
    transform: scale(0.99);
    box-shadow: 0 0 2px black;
    transition: transform 0.2s ease, box-shadow 0s ease;
}

#ticker-input,
#title-input {
    font-size: 14px;
    height: 30px;
    margin-bottom: 10px;

    background: #ffffff73;

    border-radius: 5px;
    padding: 2px 10px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    outline: none;
}

#summary-input {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-size: 14px;
    height: 60%;
    margin-bottom: 10px;
    
    background: #ffffff73;
    border-radius: 5px;
    padding: 5px 10px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    outline: none;
}


#ticker-input:focus,
#title-input:focus,
#summary-input:focus {
    outline: none;
    /* border: 1px solid #af57cd; 
    margin: 10px; 
    background: linear-gradient(144deg, #0fb7cd74 25%, #7779ff6f); */
}

#ticker-input::placeholder,
#title-input::placeholder,
#summary-input::placeholder {
color: black;
}

#date-input {
    font-size: 14px;
    height: 30px;
    
    background: #ffffff73;
    border-radius: 5px;
    padding: 2px 10px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    outline: none;
}

#no-date {
    appearance: none;
    -webkit-appearance: none;
    width: 15px;
    height: 15px;
    border: 2px solid #007bff98;
    border-radius: 50%;
    outline: none;
    position: relative;
    background-color: white;
    transition: background-color 0.2s ease-in-out;
    vertical-align: middle;
  }

  /* Styling for the checked state */
  #no-date:checked {
    background-color: #007bff;
    border-color: #007bff;
  }

  /* Add a checkmark when checked */
  #no-date:checked::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 5px;
    height: 5px;
    background-color: white;
    border-radius: 50%;
    transform: translate(-50%, -50%);
  }


#tile-view-id {
    /* display: none; */
    font-size: 10px;
    margin-top: 10px;
    padding: 5px;
    border-radius: 5px;
}

.id-visible {
    display: block;
}

#tile-view-prediction-container {
    display: flex;

    flex-direction: column;

    justify-content: flex-start; /* Aligns children at the top */
    align-items: stretch; /* Makes children take full width */
    height: auto; /* Automatically adjusts based on content */
    max-height: 100%; /* Ensures it doesn't exceed parent height */


    box-sizing: border-box; /* Ensures padding doesn't add to total width/height */
    position: relative; /* Keeps the container positioned correctly */
    
    background-color: #dad1ff; /* Background styling */
    border: 1px solid #0000005f; /* Border styling */
    border-radius: 6px;
    transition: height 0.5s ease, bottom 0.5s ease;
    flex-shrink: 0;    /* Prevent from shrinking */
    width: auto;           /* Ensure container takes available width */
    max-width: 100%;       /* Prevent expanding beyond parent width */
    
}

#tile-view-prediction-container.expanded {
    
    background-color: #dad1ff; /* Maintain the background color */
  
    display: flex; /* Ensures children elements maintain proper layout */
    flex-direction: column; /* Keeps elements stacked */
    justify-content: flex-start; /* Aligns elements to the top */
    

    width: auto;           /* Ensure container takes available width */
    max-width: 100%;       /* Prevent expanding beyond parent width */
    
    padding: 0;           /* Remove horizontal padding if any */
    
    height: auto;
    max-height: 100%;
    flex-grow: 1;
}

#prediction-button-container {
    display: flex;
    justify-content: space-between;
    gap: 10px; 
    margin-top: auto; 
}

#predictions-buttons-container {
margin-top: auto;
}

#prediction-form-container {
    display: flex;
    flex-direction: column;
    width: 100%;          /* Take full width of parent */
    max-width: 100%;      /* Don't exceed parent width */
    box-sizing: border-box; /* Include padding in width calculation */
    overflow-x: hidden;  
    flex-grow: 1;  /* Hide horizontal overflow */
}

#prediction-left-column {
    padding-top: 2px;
    display: flex;
    flex-direction: row;
    margin-right: 10px;
}
#prediction-right-column {
    width: 100%;
    margin-left: 10px;
    margin-right: 10px;
    box-sizing: border-box;
    flex-grow: 1;
}

#prediction-title {
    margin-top: 10px;
    margin-right: 20px;
}

#prediction-thesis {
   font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
   margin-top: 10px;
   margin-right: 20px;
   flex-grow: 1;
   padding: 10px;
   margin-bottom: 2px;
   width: auto;
   resize: vertical; /* Allow vertical resizing */
}

#prediction-btn {
    margin: 20px 20px;
    margin-left: auto;
    padding: 6px 12px;
    font-size: 14px;
    cursor: pointer;
    font-size: 14px;
    height: 30px;
    width: 150px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    
    background: linear-gradient(144deg, #bbff00b1, rgba(178, 255, 119, 0.234));
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#prediction-btn:hover {
    background: linear-gradient(144deg, #bbff00d9, rgba(178, 255, 119, 0.441));
}

#prediction-btn:active {
transform: translateY(-5px);
transition: transform 0.1s ease;
}

#submit-prediction-btn {
    margin: 10px;
    margin-left: auto;
    padding: 6px 12px;
    font-size: 14px;
    cursor: pointer;
    font-size: 14px;
    height: 30px;
    width: 150px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    
    background: #daff3486;
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#view-sentiment-btn {
margin: 20px 10px 10px 0px;
padding: 6px 12px;
font-size: 14px;
cursor: pointer;
font-size: 14px;
height: 30px;
width: 150px;

border: 1px solid #00000036;
box-shadow: 0 0 2px black;

background: #0008ff2a;
border-radius: 5px;
transition: transform 0.4s ease;
}


#sentiment-data-container {
    display: flex;
    flex-direction: column;

    height: 100%;
    gap: 10px;
  }

#sentiment-header-container {
    display: flex;
    margin-top: 10px;
  }

#sentiment-ticker {
    display: none;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    margin: 10px auto 10px 10px;
    padding: 5px 10px;
    border-radius: 5px;
    background-color: #f148fa2e;
    font-size: 18px;
}

#sentiment-header {
    height: fit-content;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px auto 20px auto;
    font-size: 15px;

    background-color: #c320f42e;
    box-shadow: 0 0 2px black;

    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    padding: 5px 10px;
}
  
  #sentiment-question-container {
    display: flex;
    flex-direction: column;

    margin-top: auto;
    margin-bottom: auto;

  }
  
  #sentiment-question {
    font-size: 15px;
    margin-bottom: 10px;
    margin: 10px auto;
  }

  #sentiment-question-text {
    font-weight: 550;
  }
  
  #sentiment-button-container {
    display: flex;
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
    gap: 10px;
  }
  
  #default-bullish-sentiment-btn,
  #default-bearish-sentiment-btn,
  #default-neutral-sentiment-btn,
  #bullish-sentiment-btn,
  #bearish-sentiment-btn {
    font-size: 15px;
    width: 100%;

 
    padding: 5px 10px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    box-shadow: 0 0 2px black;

    cursor: pointer;
    transition: background-color 0.3s ease;
  }
  
  #default-bullish-sentiment-btn,
  #bullish-sentiment-btn {
    background-color: #ffffff34;
    /* color: #2e7d32; */
  }

  #default-bullish-sentiment-btn:hover,
  #bullish-sentiment-btn:hover {
    background-color: #bcfa8c9d;
    border: 1px solid #115a0da8;
    color: #07491d;
    scale: 1.02;
  }

  #default-neutral-sentiment-btn {
    background-color: #ffffff34;
    /* color: #2e7d32; */
  }
  #default-neutral-sentiment-btn:hover {
    background-color: #d0f4f8b7;
    border: 1px solid #116fadcf;
    color: #134f77fc;
    scale: 1.02;
  }

  #default-bearish-sentiment-btn,
  #bearish-sentiment-btn {
    background-color: #ffffff34;
    /* color: #c62828; */
  }

  #default-bearish-sentiment-btn:hover,
  #bearish-sentiment-btn:hover {
    background-color: #f9a3a3ca;
    border: 1px solid #f96d6d;
    color: #6d0f0f;
    scale: 1.02;
  }

    /* Styling for when a bullish sentiment is selected */
.selected-bullish {
    background-color: #bcfa8c9d !important;
    border: 1px solid #115a0da8 !important;
    color: #07491d !important;
  }
  
  /* Styling for when a neutral sentiment is selected */
  .selected-neutral {
    background-color: #d0f4f8b7 !important;
    border: 1px solid #116fadcf !important;
    color: #134f77fc !important;
  }
  
  /* Styling for when a bearish sentiment is selected */
  .selected-bearish {
    background-color: #f9a3a3ca !important;
    border: 1px solid #f96d6d !important;
    color: #6d0f0f !important;
  }

#default-bullish-sentiment-btn,
#default-neural-sentiment-btn,
#default-bearish-sentiment-btn,  
#bullish-sentiment-btn:active,
#bearish-sentiment-btn:active {
    transform: scale(0.99);
}

#sentiment-graph-container {
    display: flex;
    flex-direction: column;
   
    height: 250px;
    position: relative;
    overflow: hidden;
}

#sentiment-graph {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    height: 200px;
    width: 200px;
}


#historical-sentiment-graph-container {
    display: flex;
    flex-direction: column;

    height: 50%;

    position: relative;
    overflow: hidden;
}

#historical-graph {
display: flex;
margin-left: 30px;
margin-right: 50px;
height: 100px;
}

#historical-sentiment-header {
    display: flex;
    font-size: 15px;
    margin: 20px auto 10px auto;

    background-color: #c320f42e;
    box-shadow: 0 0 2px black;

    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    padding: 5px 10px;;
}




#view-predictions-btn {
    margin: 20px 10px 10px 10px;
    margin-left: auto;
    padding: 6px 12px;
    font-size: 14px;
    cursor: pointer;
    font-size: 14px;
    height: 30px;
    width: 150px;

    border: 1px solid #00000036;
    box-shadow: 0 0 2px black;
    
    background: #daff3486;
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#view-sentiment-btn:hover,
#submit-prediction-btn:hover,
#cancel-view-predictions-btn:hover,
#cancel-prediction-btn:hover,
#view-predictions-btn:hover {
    scale: 1.02;
}

#view-sentiment-btn:active,
#submit-prediction-btn:active,
#cancel-view-predictions-btn:active,
#cancel-prediction-btn:active,
#view-predictions-btn:active {
scale: 0.99;
transition: scale 0.1s ease;
}

#cancel-prediction-btn {
    margin: 10px;
    margin-right: auto;
    padding: 6px 12px;
    font-size: 14px;
    cursor: pointer;
    font-size: 14px;
    height: 30px;
    width: 100px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    
    background: #ff1c6f36;
    border-radius: 5px;
    transition: transform 0.4s ease;
}

#cancel-view-predictions-btn {
    margin: 20px 10px 10px 10px;
     padding: 6px 12px;
     font-size: 14px;
     cursor: pointer;
     font-size: 14px;
     height: 30px;
     width: 100px;
 
     border: 1px solid rgba(0, 0, 0, 0.21);
     box-shadow: 0 0 2px black;
     
     background: #ff1c6f36;
     border-radius: 5px;
     transition: transform 0.4s ease;
 }

#tile-view-prediction-container label {
    font-size: 15px;
    margin-bottom: 5px;
    margin-left: 20px;
}

#tile-view-prediction-container input {
height: 30px;
}

#tile-view-prediction-container input,
#tile-view-prediction-container textarea {
    font-size: 14px;
    
    background: #ffffff73;
    border-radius: 5px;
 
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    outline: none;
}

#tile-view-prediction-container input {
    padding: 2px 10px;
}

#prediction-direction {
    display: flex;
 
    margin-left: 10px;
    height: 35px;
    width: 80px;

    font-size: 14px;
    
    background: #ffffff73;
    border-radius: 5px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;

    outline: none;
}

#prediction-ticker {
    margin-left: 10px;
}

#prediction-target {
    margin-left: 10px;
    width: 100%;
}

#prediction-expiry {
    margin-left: 10px;
    width: 100%;
}

#prediction-ticker::placeholder,
#prediction-target::placeholder,
#prediction-title::placeholder,
#prediction-thesis::placeholder,
#prediction-expiry::placeholder {
    color: black;
}

#tile-view-type-event,
#tile-view-type-prediction {
    display: flex;

    height: fit-content;
    width: fit-content;

    margin-top: auto;
    margin-bottom: auto;
    margin-left: 20px;

    flex-direction: column;
    justify-content: center;
    align-items: center;
    
    font-size: 12px;
    
    padding: 2px 5px;
    box-shadow: 0 0 2px black;
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
}

#tile-view-type-prediction {
    background-color: #f5f3b66a;
}

#tile-view-type-event {
    background-color: #87a7f874;
}

.sentiment-bar {

    position: relative;
    display: flex; 

    height: 10px;
    margin: 10px;
    margin-bottom: -10px;

    transform: background-color 1s ease;
}

.sentiment-up {
    /* background-color: #6666ff61; */
    height: 100%;
    transition: width 0.3s ease;
    border-top-left-radius: 50px;
    border-bottom-left-radius: 50px;
}

.sentiment-down {
    /* background-color: #ff76765d; */
    height: 100%;
    transition: width 0.3s ease;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
}

.sentiment-bar-tooltip {
    visibility: hidden;  /* Hide by default */
    width: 150px;        /* Set the desired width */
    font-size: 13px;
    background-color: #333;
    color: #fff;
    text-align: center;
    padding: 5px 8px;
    border-radius: 5px;
    
    /* Positioning */
    position: absolute;
    z-index: 1;
    bottom: 150%;  /* Position above the container */
    left: 50%;
    transform: translateX(-50%);  /* Center horizontally */
    
    /* Transition for smooth fade-in */
    opacity: 0;
    transition: opacity 0.5s;
}

.sentiment-bar:hover .sentiment-bar-tooltip {
    visibility: visible;  /* Show the tooltip on hover */
    opacity: 1;           /* Fade in the tooltip */
  }

#user-stats {
    display: flex;
    flex-direction: column;
    /* align-items: center; */

    font-size: 14px;
    height: 100%;
    width: 100%;

    overflow-y: scroll;
    line-height: .2; /* Adjust this value as needed */
    margin: 0 0 10px 10px;    /* Reduce vertical margins to tighten spacing further */   
}

#sentiment-tooltip-header {
    font-weight: bolder;
}

#stats-header {
    width: fit-content;
    background-color: #fdffb86a;
    border-radius: 5px;
    padding: 10px 20px;
    margin-left: 2px;
    margin: 10px 0 0 2px;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
}

#stats-title {
    width: fit-content;
    background-color: #35f3cd43;
    border-radius: 5px;
    padding: 10px 20px;
    margin-left: 2px;
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
}

#stats-content {
    width: fit-content;

    border-radius: 5px;
    padding: 10px 20px;
    margin-left: 2px;
    margin: 0;
}


#filter-section {
    display: flex;
    /* flex-direction: column; */
    margin: 10px;
    align-items: start;
    position: relative;
  }
  
  #filter-group-buttons {
    display: flex;
    /* flex-direction: column; */
    gap: 10px;
  }
  
  .filter-group-btn {
    cursor: pointer;

    padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: #f5f5f55a;
    transition: transform 0.4s ease;
  }
  
  #filter-info {
    display: flex;
    /* flex-direction: column; */
    align-items: center;
    gap: 10px;
    font-size: 14px;
  }
  
  #apply-filters-btn,
  #reset-filters-btn {
    font-size: 15px;
    cursor: pointer;
    margin-right: 10px;
    margin-top: 10px;
    padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: linear-gradient(144deg, #f5f5f55a, #f5f5f55a);
    transition: all 0.3s ease;
  }

  #apply-filters-btn {
    background: #8effaa6b;
  }

  #apply-filters-btn:hover {
    background: #8effaa85;
    transition: all 0.3s ease;
    scale: 1.02;
  }

  #apply-filters-btn:active {
    scale: 0.99;
  }

  #reset-filters-btn {
    background: #feb1b15f;
  }

  #reset-filters-btn:hover {
    background: #feb1b185;
    transition: all 0.3s ease;
    scale: 1.02;
  }

  #reset-filters-btn:active {
    scale: 0.99;
  }

  #filter-options-area {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .filter-options {
    display: flex;
    margin-top: 10px;
    gap: 5px;
  }

  #active-filter-count {
    width: fit-content;
    margin-top: 15px;
    font-size: 15px;
    padding: 15px 10px;
    background: #f5f5f55a;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
  }

  #filter-count-text {
    padding: 3px 8px;
    font-weight: 600;
    border: 2px solid #007bff72;
    border-radius: 5px;
    color: #005eff;
    background-color: #72b4fa6d;
  }

  #event-time-filter-label,
  #prediction-time-filter-label {
    font-size: 15px;
    font-weight: 600;
  }

  /* Filter group buttons styling */
 
  #event-filters-btn,
  #prediction-filters-btn {
    cursor: pointer;
    padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: #f5f5f55a;
    transition: all 0.3s ease;
    font-size: 15px;
    margin-right: 10px;
  }

  
  #event-filters-btn:hover,
  #prediction-filters-btn:hover {
   scale: 1.02;
  }

  #event-filters-btn:active,
  #prediction-filters-btn:active {
    scale: 0.99;
  }

#event-filters-btn.active-filter-tab,
#prediction-filters-btn.active-filter-tab {
    background-color: #4b31f336;
    font-weight: 550;
}
  
  #filter-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  #filter-modal {
    background: linear-gradient(#b4ceff, #cbc1ff);
    border-radius: 5px;
    max-width: 400px;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
  }
  
  #filter-modal-overlay.hidden {
    display: none;
  }

  .hidden {
    display: none !important;
  }
  
  #filter-modal-header {
    display: flex;
    font-size: 14px;
    justify-content: space-between;
    align-items: center;
    margin: 0 10px 0 10px;
  }

  #filter-modal-close{
    display: flex;
    color: black;
    justify-content: center;

    margin: 0px;
    border: none;
    padding: 5px 10px;
    border-radius: 25px;

    font-size: 14px;

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);

    box-shadow: 0 0 2px black;
    transition: box-shadow 0.1s ease, background-color 0.4s ease, transform 0.1s ease;
  }
  #filter-modal-close {
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: linear-gradient(144deg, #4d7cfd6e, #4d7cfd92);
    transition: transform 0.4s ease;
}

#filter-modal-close:hover {
    background: linear-gradient(144deg, #4d7cfda4, #4d7cfd9d);
}

#search-section {
    display: flex;
    height: 100%;
    width: 100%;
}

#ticker-search-field {
display: flex;
width: 100px;
margin: 10px;
border-radius: 5px;
background: #ffffff73;
border: none;
padding: 5px 10px;
border: 1px solid rgba(23, 19, 19, 0.21);
box-shadow: 0 0 2px black;
text-align: center;
outline: none;
}

#search-btn,
.search-close-btn {
   cursor: pointer;
   margin: 10px;
   display: flex;
   justify-content: center;
   align-items: center; 

    padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: linear-gradient(144deg, #f5f5f55a, #f5f5f55a);
    transition: scale 0.2s ease;
}

.search-close-btn:hover,
#search-btn:hover {
    transition: scale 0.2s ease;
    scale: 1.02;
}

#toggle-section {
    height: 100%;
    display: flex;

    /* margin-left: auto; */
    margin-right: 10px;

    justify-content: center;
    align-items: center;
    flex: 1 1 auto;
}

#example-toggle-section {
  height: 60px;
  display: flex;

  margin-right: 10px;

  justify-content: center;
  align-items: center;
}

#example-lower-left-box {
  display: flex;
  width: 500px;
  margin: 20px 0 20px 50px;
  align-items: center;
}

.tile-toggle-btn {
    display: flex;
    align-items: center;
    justify-content: center;

    height: 50%;
    width: auto;

    margin-left: 10px;

    font-size: 12px;
    padding: 3px 5px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: linear-gradient(144deg, #f5f5f55a, #f5f5f55a);
    transition: transform 0.4s ease;

    cursor: pointer;
}

#news-toggle-btn {
    margin-top: auto;
    background: #f5f5f55a;
}

#event-toggle-btn {
    background: #f5f5f55a;
}

#prediction-toggle-btn {
    background: #f5f5f55a;
}

#expired-toggle-btn {
    background: #f5f5f55a;
}

#news-toggle-btn:hover {
    background: #8b79ff40;
    scale: 1.02;
}

#event-toggle-btn:hover {
    background: #8dc8ffd9;
    scale: 1.02;
}

#prediction-toggle-btn:hover {
    background: #eeff8db0;
    scale: 1.02;
}

#expired-toggle-btn:hover {
    background: #ff646459;
    scale: 1.02;
}

#news-toggle-btn:active,
#event-toggle-btn:active,
#prediction-toggle-btn:active,
#expired-toggle-btn:active {
    scale: 0.99;
}

#news-toggle-btn.active {
    background: #8b79ff40;
}

#event-toggle-btn.active {
    background-color: #8dc8ffd9;
}

#prediction-toggle-btn.active {
    background-color: #eeff8db0;
}

#expired-toggle-btn.active {
    background-color: #ff646459;
}

#filter-selection-header {
font-size: 14px;

padding: 5px 10px;
border: 1px solid rgba(0, 0, 0, 0.21);
box-shadow: 0 0 2px black;
border-radius: 5px;
background: linear-gradient(144deg, #c7a1eb95, #c7a1eb95);

margin: 0 10px;
margin-bottom: 15px;
}

#filter-selection {
display: block;
    font-size: 14px;
    margin-bottom: -10px;

    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: linear-gradient(144deg, #f5f5f55a, #f5f5f55a);
    padding: 5px 10px;
    margin-left: 10px;
    margin-right: 90px;
}

#filter-btn {
    /* display: flex;
    height: 100%;
    justify-content: center;
    align-items: center;
    background: none;
    border: none; */

   cursor: pointer;
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center; 
   outline: none;

    padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    background: linear-gradient(144deg, #f5f5f55a, #f5f5f55a);
    transition: scale 0.2s ease;
}

#filter-btn:hover {
    transition: scale 0.2s ease;
    scale: 1.02;
}

.filter-options {
    display: flex;
    margin-top: 10px;
    flex-direction: column;
    font-size: 15px;
    margin-bottom: 10px;
}

#filter-container {
    overflow-y: scroll;
    padding: 10px;
}

#form-create-display {
    display: flex;
    flex-direction: column;
    margin: 10px 10px 0 10px;
    font-size: 14px;
    padding: 2px;
    height: 100%;
    width: 100%;
    padding: 10px;
    overflow-y: scroll;

    justify-content: space-evenly;
}

#selected-prediction-details {
    display: flex;
    flex-direction: column;
    margin: 10px;
    margin-left: auto;
    /* border: 1px solid rgba(0, 0, 0, 0.21); */
    border-radius: 5px;
    width: fit-content;

    font-size: 14px;
    
    /* padding: 10px;
    background-color: #38474a1d;
    box-shadow: 0 0 2px black; */

    outline: none;
}   

#help-back-btn {
position: fixed;
top: 20px;
right: 20px;
font-size: 15px;
align-items: center;
justify-content: center;
background-color: white;
color: black;
padding: 5px 10px;

border: 2px solid black;
border-radius: 5px;
box-shadow: -8px 8px 0px black;
transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

#help-back-btn:hover {
transform: translateX(-3px);
box-shadow: -3px 3px 0px black;
background-color: #77c6ff;
transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

#prediction-profile-container {
    font-size: 15px;
    display: flex;
    height: auto;
    width: auto;

    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;

 
    background-color: #dad1ff; 
    border-bottom-right-radius: 50px;
    border-top-right-radius: 50px;
    border-bottom-left-radius: 50px;
    border-top-left-radius: 50px; 
    
    /* border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black; */
}

#prediction-profile-user-data {
    display: flex;
}

#prediction-profile-tility-score,
#prediction-profile-credibility-score,
#prediction-profile-username {
    display: flex;
    align-items: center;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    padding: 5px 10px;
    /* border-bottom-right-radius: 50px;
    border-top-right-radius: 50px; */
}

#prediction-profile-username {
    gap: 10px;
    background-color: #dbd3fe;
    border-bottom-left-radius: 50px;
    border-top-left-radius: 50px;
    padding-left: 5px;

    /* border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black; */
}

#prediction-profile-tility-score {
    background-color: #ccc0fe;
}

#prediction-profile-credibility-score {
    border-radius: 5px;
    background-color: #bbaaff;
}

/* #prediction-profile-img {
    height: 20px;
    width: 20px;
    border-radius: 50px;
    margin-right: 10px;
    background: linear-gradient(144deg, #4800ffa6, #00d5ff2f);
} */

#prediction-profile-details-container {
    display: flex;
    flex-direction: column;

    font-size: 15px;
    height: auto; /* Automatically adjusts based on content */
    padding: 5px 10px;
    align-items: flex-start;
 
    background-color: #dad1ff; 
    border-radius: 5px; 
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
}

#prediction-performance-container {
    display: flex;
    flex-direction: column;

    font-size: 15px;
    height: auto; /* Automatically adjusts based on content */
    margin-top: 10px;
    padding: 5px 10px;
    align-items: flex-start;
 
    background-color: #fbe0aa87; 
    border-radius: 5px; 
    
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
}

.prediction-profile-score {
    font-size: 16px;

    display: flex;
    flex-direction: column;
    height: auto; /* Automatically adjusts based on content */
    width: auto;
    padding: 5px 10px;
    margin-bottom: 5px;
    align-items: flex-start;
 
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    
    background: #00d5ff3c;
    border-radius: 5px;
}

#help-container {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 20px;
    left: 20px;
    height: fit-content;
    width: 200px;
    padding: 10px;


    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);

    /* border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    box-shadow: 0 0 2px black; */

    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
    }
    
    #help-container:hover {
    transform: translateX(-3px);
    box-shadow: -3px 3px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
    }

.help-btn {
    display: flex;
    flex-direction: column;
    width: auto;
}

#help-title {
    text-align: center;
    padding: 10px 30px;
    border: 2px solid black;
    border-radius: 5px;
    background-color: #ffffff;

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);
}

.help-btn {
    display: flex;

    height: 30px;
    margin-top: 10px;
    font-size: 15px;

    align-items: left;
    justify-content: center;
    cursor: pointer;

    border: 2px solid black;
    border-radius: 5px;
    background-color: #ffffff;

    padding: 5px 10px;

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);

    transition: transform 0.4s ease;
}

.help-btn:hover {
    background: #bbff00d9;
}

.help-btn.active {
    background: #bbff00d9;
}

.help-btn:active {
    transform: translateY(-5px);
    transition: transform 0.1s ease;
}

.help-content {
    width: auto;
    display: flex;
    flex-direction: column;
    margin-left: 300px;
    margin-right: 200px;
    overflow-x: scroll;

    font-size: 15px;

    padding: 10px 30px;

    background-color: #ffffff;
    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);

    border: 2px solid black;
    border-radius: 5px;
    box-shadow: -8px 8px 0px black;
    transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 2s ease;
}

.help-content:hover {
transform: translateX(-3px);
box-shadow: -3px 3px 0px black;
transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease;
}

.help-tip-text {

  padding: 10px;
  border: 1px solid rgba(0, 0, 0, 0.21);
  border-radius: 5px;
  box-shadow: 0 0 2px black;
  background-color: #ffc58e61;
}

#timeframe-container {
display: flex;
align-items: center;
justify-content: center;

margin-top: auto;
margin-bottom: 10px;
gap: 15px;
}

.chart-timeframe-btn {
    display: flex;
    justify-content: center;
    border: none;
    padding: 3px 10px;
    border-radius: 5px;

    align-items: center;
    font-weight: 600;

    color: #315ef3;
    background-color: #318ff324;

    font-size: 13px;
    cursor: pointer;

    backdrop-filter: blur(10px) brightness(1.4);
    -webkit-backdrop-filter: blur(0px) brightness(0.8);

    border: 1px solid #315ef38e;
    box-shadow: 0 0 1px black;
    transition: box-shadow 0.1s ease, background-color 1s ease, scale 0.2s ease, color 1s ease; 

}

.chart-timeframe-btn:hover {
    scale: 1.03;

    color: #e3e9ff;
    background-color: #1382f8ca;

    transition: scale 0.2s ease, background-color 0.4s ease;
}

.chart-timeframe-btn:active {
    scale: 0.99;
    transition: scale 0.2s ease, background-color 0.4s ease;
}

.timeframe-active {
  color: #e3e9ff;
  background-color: #1a86f9ac;
    }

#leaderboard-toggle-container {
    margin-left: auto;
    margin-right: auto;
    margin: 20px auto;
}

#tility-toggle-btn,
#credibility-toggle-btn {
font-size: 15px;

border: 1px solid rgba(0, 0, 0, 0.21);
padding: 5px 10px;

cursor: pointer;

background-color:#57c5cd3d;
transition: background-color 0.4s ease;
}

#tility-toggle-btn:hover,
#credibility-toggle-btn:hover {
background-color:#32ffda4f;
transition: background-color 0.4s ease;
}

#tility-toggle-btn {
border-top-right-radius: 50px;
border-bottom-right-radius: 50px;

border-left: none;
box-shadow: 0 0 2px black;
}

#credibility-toggle-btn {
border-top-left-radius: 50px;
border-bottom-left-radius: 50px;

border-right: none;
box-shadow: 0 0 2px black;
}

#leaderboard-table {
    text-align: center;
    font-size: 14px;
    padding: 10px;
}

.ranking-current-user-row {
background-color: #fdfb9988;
/* font-weight: bold; */
}

.ranking-toggle-active {
background:#32ffda4f !important;
}

#default-right-column-content {
    display: flex;
    flex-direction: column;

    height: 100%;
    font-size: 15px;
    padding: 0px 10px 0px 10px;
}

.default-content-headers {
    display: flex;
    align-items: center;

    width: 100%;
    margin: 10px;

    font-weight: 500;

    /* padding: 5px 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;

    box-shadow: 0 0 2px black;
    background-color: #561ff922; */
}

.default-content-headers::before,
.default-content-headers::after {
  content: '';
  flex: 1;
  height: 1px; /* Thickness of the line */
  background: #0000004d; /* Line color */
}

.default-content-headers::before {
  margin-right: 10px; /* Space between line and text */
}

.default-content-headers::after {
  margin-left: 10px; /* Space between line and text */
}

.default-content {
    display: flex;
    flex-direction: column;
    font-size: 15px;
    height: 100%;
    align-items: center;
    justify-content: center;
}

#market-overview-container {
    height: 15%;
}

#overview-chart-area {
    width: 100%;
    display: flex;
    flex-direction: column; /* so header is on top, chart is below */
    align-items: stretch;   /* ensures child elements fill the container width */
    margin-bottom: 10px;
  }


#indicator-chart-lower {
    display: flex;
    flex-direction: column;
}

#indicator-timeframe-container {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 15px;
}



#active-tickers-container {
    height: 100%;
}

#gainers-losers-container {
    height: 100%;
}

#gainers-losers,
#active-tickers,
#market-overview {
display: flex;

justify-content: space-evenly;

margin-bottom: 10px;
margin-right: auto;
}

.market-overview-ticker-btn {
    display: flex;
    flex-direction: column;

    font-size: 13px;
    font-weight: 550;

    justify-content: center;
    align-items: center;

    gap: 2px;
    padding: 7px;

    margin-right: 5px;

    background-color: #55d7f12b;

    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;

    color: #07500b;


    box-shadow: 0 0 2px black;
    transition: background-color 0.3s ease, transform .3s ease;
}

.market-overview-ticker-btn:hover {
    transform: scale(1.02);
    box-shadow: 0 0 4px black;
    transition: background-color 0.6s ease, transform .3s ease;
}

.market-overview-ticker-btn:active {
    transform: scale(0.99);
    transition: background-color 0.6s ease, transform .3s ease;
}

#settings-container {
    display: flex;
    flex-direction: column;
    font-size: 15px;
    width: 100%;
}

#username-selection-label,
#color-selection-label {
    display: flex;

    border: 1px solid rgba(0, 0, 0, 0.21);
    padding: 5px 10px;
    margin: 20px;

    background-color: #2293fc5e;

    border-radius: 5px;
    box-shadow: 0 0 2px black;
}

#profile-color-picker {
    display: flex;
    flex-direction: column;
    overflow: visible;
    /* Make the element itself circular */
    width: 40px;
    height: 40px;
    border-radius: 50%;
    padding: 0;
    margin: auto;
    border: none; 
    cursor: pointer;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
  
    /* Remove default background and forced border in some browsers */
    background: none;
    appearance: none;            /* Helps remove default styles (some browsers) */
    -webkit-appearance: none;    /* For WebKit/Blink browsers */
  }
  
  /* The color swatch wrapper (outer ring) */
  #profile-color-picker::-webkit-color-swatch-wrapper {
    padding: 0;                  
    border-radius: 50%;           
  }
  
  /* The color swatch (inner circle) */
  #profile-color-picker::-webkit-color-swatch {
    border: none;              
    border-radius: 50%;          
    padding: 0;
    margin: 0;
    background-color: transparent; /* For safety, ensures no background color leaks */
  }

  #success-msg {
    border-radius: 5px;
    margin: 10px;
    padding: 5px 10px;
    height: fit-content;
    width: fit-content;
    background-color: black;
    color: white;
    border: 1px solid rgba(0, 0, 0, 0.21);
  }

#carousel-container {
    position: relative;
    width: 100%;    
    margin: 0;
    overflow: hidden; 
    height: 100%;  
    background-color: #80b7ff35;
  }
  
  /* Slides Wrapper: hold slides stacked (absolute) or with fade transitions */
  #carousel-slides {
    display: flex;
    position: relative;
    width: 100%;
    height: 100%;
  }
  
  /* Each slide */
  .carousel-slide {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;    
 
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 15px;
  }
  
  /* The "active" slide is visible (fade in) */
  .carousel-slide.active {
    opacity: 1;
    z-index: 2;
  }
  
  /* Navigation Arrows */
  .carousel-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    color: #00000056;
    font-size: 20px;
    padding: 5px 10px;
    border: none;
    cursor: pointer;
    z-index: 3; 
    border-radius: 50px;
    transition: right 0.3s ease, left 0.3s ease;
  }

  #popular-content-container {
    display: flex;
    height: 100%;
    justify-content: center;
    margin-top: -25px;
  }





/* Parent container for the carousel-sentiment */
#carousel-sentiment {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    width: 100%;
    height: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  
  /* Default sentiment container (holds both the chart and vote UI) */
  #default-sentiment-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  
  /* Chart container styling using relative units */
  #default-sentiment-chart-container {
    display: flex;
    width: 100%;

    height: 25vh; /* 30% of viewport height; adjust as needed */
   
    box-sizing: border-box;
  }
  
  /* Style the canvas element for the global sentiment chart */
  #global-sentiment-chart,
  #default-sentiment-chart-container canvas {
    width: 100% !important;
    height: 100% !important;
  }
  
  /* Sentiment vote container styling */
  #default-sentiment-vote-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
    padding: 0 30px;
  }
  
  /* Button container for sentiment submission */
  #default-sentiment-button-container {
    display: flex;
    gap: 10px;
  }
  
  /* Question styling */
  #default-sentiment-question {
    text-align: center;
    font-size: 15px;
    margin: 15px 0 10px 0;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px black;
    border-radius: 5px;
    padding: 10px 0;
     background-color: #ffffff52;
    width: 100%;
    box-sizing: border-box;
  }
  
  /* Optional: Responsive adjustments using media queries */
  @media (max-width: 768px) {
    #default-sentiment-chart-container {
      height: 40vh; /* Increase height on smaller screens if needed */
    }
    #default-sentiment-button-container {
      flex-direction: column;
      gap: 5px;
    }
  }







  #trending-tickers-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    margin-top: -25px;
  }

    #trending-tickers-group-1,
    #trending-tickers-group-2,
    #trending-tickers-group-3 {
    display: flex;
    margin: 10px;
  }

  .trending-ticker {
    margin: 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    box-shadow: 0 0 2px black;
    padding: 5px 10px;
    background-color: #8b48ef2a;
    transition: scale 0.5s ease, background-color 0.4s ease;
  }

  .trending-ticker:hover {
    scale: 1.06;
    background-color: #8b48ef43;
    transition: scale 0.5s ease, background-color 0.4s ease;
  }

  .news-nav {
    position: absolute;
    top: 50%; /* Positions it halfway down the parent div */
    transform: translateY(-50%); /* Ensures vertical centering */
    background: none;
    color: #00000056;
    font-size: 20px;
    padding: 5px 10px;
    border: none;
    cursor: pointer;
    z-index: 3; 
    border-radius: 50px;
    transition: all 0.3s ease;
}

#news-prev,  
#carousel-prev {
    left: 5px;
    transition: all 0.3s ease;
}

#news-next, 
#carousel-next {
    right: 5px;
    transition: all 0.3s ease;
}

#news-prev:hover, 
#carousel-prev:hover {
    left: 10px;
    transition: all 0.3s ease;
}

#news-next:hover, 
#carousel-next:hover {
    right: 10px;
    transition: all 0.3s ease;
}
  
.carousel-nav:hover {
    color: #00000056;
  }

#news-prev:active, 
#carousel-prev:active {
    left: 0px;
    transition: all 0.3s ease;
}

#news-next:active, 
#carousel-next:active {
    right: 0px;
    transition: all 0.3s ease;
}

.sentiment-bar-prediction-open {
    display: none;
    }

.carousel-header {
    display: flex;
    font-size: 15px;
    margin-top: 10px;

    align-items: center;
    justify-content: center;
}

.carousel-content {
    display: flex;
    flex-direction: column;
    width: 75%;
    margin-left: auto;
    margin-right: auto;

}

.prediction-highlight-container {
    display: flex;
}

#feedback-highlight,
#release-highlight {
    display: flex;
    flex-direction: column;
    margin: 10px;
    font-size: 15px;
    padding: 5px 10px;
    align-items: center;
    justify-content: center;
    background-color: #f5f5f55a;
    border: 1px solid rgba(0, 0, 0, 0.21);
    border-radius: 5px;
    box-shadow: 0 0 2px black;
    text-align: center;
}

#release-highlight-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    margin-left: 50px;
    margin-right: 50px;
    margin-top: -25px;
}





/* News Item Styling */
#overview-news-area {
    position: relative;
    display: flex;
    height: 100%;
    margin-bottom: 11px;
    border-radius: 5px;

}

.overview-news-content {
    display: flex;
    /* border: 1px solid rgba(0, 0, 0, 0.21); */
    height: 100%;
    margin-bottom: 10px;
    border-radius: 5px;
    /* background-color: #4c00ff17; */
}

.news-item {
    position: absolute;
  display: flex;
  flex-direction: column;
  padding: 0px 50px;
  background-color: #ffffff52;
  border-radius: 8px;
  box-shadow: 0 0px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  height: 100%;
  margin-bottom: 10px;

  border: 1px solid rgba(0, 0, 0, 0.21);

  transition: all 0.3s ease, opacity 0.5s ease; /* Added opacity transition */
  opacity: 1;
  /* background-color: #4c00ff17; */
}

.news-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 8px;
  color: #333;
}

.news-description {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 10px;
  color: #555;
  max-height: 100%;
  overflow-y: scroll;
}

.news-metadata {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #777;
  align-items: center;
  height: fit-content;
  margin-bottom: 10px;
}

.news-date {
  font-style: italic;
}

.news-link {
  color: #4b31f3;
  background-color: #4b31f31a;
  text-decoration: none;
  font-weight: 500;
  padding: 4px 8px;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.news-link:hover {
  background-color: #4b31f333;
  color: #2d1bb3;
}

/* Override existing news nav styles to improve appearance */
.news-nav {
  margin: 0 5px;
  opacity: 0.6;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.news-nav:hover {
  opacity: 1;
}

/* News Item Text Fade Transition */
.news-title, 
.news-description, 
.news-metadata {
  transition: opacity 0.8s ease;
  opacity: 1;
}

.news-item .fade-out {
  opacity: 0;
}

.news-item .fade-in {
  animation: fadeInAnimation 0.8s ease forwards;
}

@keyframes fadeInAnimation {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Generic clicked style (legacy - keeping for compatibility) */
.clicked {
  background-color: #57c5cd9f !important;
}

/* Specific clicked styles for different tile types */
.event-clicked {
  background-color: #82e7f991 !important; /* Same as .dashboard-content-box-styling:hover */
  transform: scale(1.01);
  box-shadow: 0 0 5px black;
  border: 1px solid #1383f399;
}

.prediction-clicked {
  background-color: #f0f58884 !important; /* Same as .prediction-tile:hover */
  transform: scale(1.01);
  box-shadow: 0 0 5px black;
  border: 1px solid #f9c713c5;
}

.past-date-clicked {
  background-color: #fa87877e !important; /* Same as .past-date-tile:hover */
  transform: scale(1.01);
  box-shadow: 0 0 5px black;
  border: 1px solid #fb3d3778;
}

/* Google Auth Button Styles */
.google-auth-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0px 0 30px 0;
}

.google-auth-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 15px;
  background-color: #5ac5ff40;
  border: 2px solid #0f83ff4d;
  border-radius: 4px;
  font-size: 15px;
  font-weight: 500;
  color: #444;
  cursor: pointer;
  transition: background-color 0.5s, box-shadow 0.3s;
  width: 80%;
  /* margin-top: 10px; */
  /* box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); */
  
}

.google-auth-btn:hover {
    background-color: #5ac5ff9a;
  /* border: 1px solid #2db0f6b9; */
  /* box-shadow: 0 0 4px rgba(0, 0, 0, 0.4); */
  transition: background-color 0.5s, box-shadow 0.3s;
}

.google-auth-btn img {
  width: 18px;
  height: 18px;
  margin-right: 10px;
}

#google-auth-text {
    margin: 0 0 20px 0;
}

#google-login-btn {
    margin: 0;

}

#username-selection-text {
    margin: 0 0 10px 0;
    font-size: 15px;
    font-weight: bold;
}

/* Username availability check */
.settings-username-input-group {
  display: flex;
  gap: 10px;
  margin: 0 20px;
  width: calc(100% - 40px); /* Account for left and right margins */
  box-sizing: border-box;
}

#username {
  flex-grow: 1;
  margin-top: 0;
  margin-right: 10px;
  border: 2px solid #0f83ff77;
}

#check-username-btn {
  font-size: 12px;
  padding: 0px 10px;
  height: 30px;
  align-self: center;
  white-space: nowrap;
  background-color: #f0f0f0;
  border: 2px solid #0b0b0b36;
  border-radius: 5px;
  cursor: pointer;

  transition: background-color 0.5s, transform 0.5s;
}

#check-username-btn:hover {
  background-color: #e0e0e0;
  transition: background-color 0.5s, transform 0.5s;
}

#check-username-btn:active {
    background-color: #b0e3ff;
    transform: translateY(-4px);
    transition: background-color 0.1s, transform 0.1s;
  }

.status-message {
  margin-top: 10px;
  margin-bottom: 0px;

  display: none;
}

.status-message.success {
  color: #4caf50;
}

.status-message.error {
  color: #f44336;
}

.hidden {
  display: none;
}

.signup-prompt {
  margin-top: 20px;
  text-align: center;
}

.signup-prompt a {
  color: #007bff;
  text-decoration: none;
}

.signup-prompt a:hover {
  text-decoration: underline;
}

#financial-disclaimer-text,
#privacy-policy-text,
#terms-text {
    margin: 0;
}

.google-auth-btn img.google-logo {
  width: 18px;
  height: 18px;
  margin-right: 10px;
  vertical-align: middle;
}

.notification {
  background-color: #fff3cd;
  color: #856404;
  padding: 10px 15px;
  margin-bottom: 15px;
  border-radius: 4px;
  border-left: 4px solid #ffc107;
}

.notification p {
  margin: 0;
  font-size: 14px;
}

#profile-info-container {
  display: flex;
  align-items: center;
}

#profile-img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  flex-shrink: 0;
}

#tility-score-display,
#credibility-score-display {
  font-size: 15px;
  background-color: #ffffff81;
  border: none;
  margin-left: 5px;
  border-right: none;
  /* font-weight: bold; */
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  white-space: nowrap;

  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.509);
}

#tility-profile-ranking,
#credibility-profile-ranking {
  font-size: 15px;
  font-weight: bold;
  color: #ffffff;
  margin-right: 5px;
  white-space: nowrap;

  border: none;
  border-left: none;
  background-color: #00000030;
  padding: 5px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;

  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.509);
}

#username-display {
    font-size: 15px;
    font-weight: 550;
    display: flex;
    border: none;
    border-radius: 5px;
    margin: 0 5px 0 10px;
    border: 1px solid rgba(0, 0, 0, 0.21);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.509);

    color: #ffffff;
    background-color: #00000030;
}

/* Legal Document Styling */
.document-container {
  max-width: 900px;
  margin: 40px auto;
  padding: 30px;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.document-header {
  text-align: center;
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #eaeaea;
}

.document-header h1 {
  color: #333;
  font-size: 28px;
  margin-bottom: 10px;
}

.document-content {
  line-height: 1.6;
  color: #333;
  font-size: 16px;
}

.document-content h2 {
  font-size: 22px;
  margin-top: 30px;
  margin-bottom: 15px;
  color: #222;
  border-bottom: 1px solid #eee;
  padding-bottom: 8px;
}

.document-content h3 {
  font-size: 18px;
  margin-top: 20px;
  margin-bottom: 10px;
  color: #444;
}

.document-content p {
  margin-bottom: 15px;
}

.document-content ul, .document-content ol {
  margin-bottom: 20px;
  margin-left: 25px;
}

.document-content li {
  margin-bottom: 10px;
}

.document-content a {
  color: #0066cc;
  text-decoration: none;
}

.document-content a:hover {
  text-decoration: underline;
}

.document-content .last-updated {
  font-style: italic;
  color: #666;
  margin-bottom: 25px;
}

.document-content .document-end {
  text-align: center;
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid #eaeaea;
  color: #666;
  font-style: italic;
}

@media (max-width: 768px) {
  .document-container {
    padding: 20px;
    margin: 20px;
  }
  
  .document-header h1 {
    font-size: 24px;
  }
  
  .document-content {
    font-size: 15px;
  }
  
  .document-content h2 {
    font-size: 20px;
  }
  
  .document-content h3 {
    font-size: 17px;
  }
}

/* Spinner styles for form submissions */
.spinner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 15px;
}

.spinner-text {
font-size: 15px;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* Form validation styles */
input.error, select.error, textarea.error {
  border: 1px solid #f47171;
  background-color: #fff0f0;
}

.error-message {
  color: #f47171;
  font-size: 0.9em;
  margin: 5px 0;
  max-width: 100%;
  word-wrap: break-word;
}

.success-message {
  color: #6EC26E;
  font-size: 0.9em;
  margin: 5px 0;
  max-width: 100%;
  word-wrap: break-word;
}

/* Message container for form global messages */
.form-message-container {
  position: relative;
  margin: 10px 0;
  padding: 8px;
  border-radius: 4px;
  max-height: 60px;
  overflow-y: auto;
}

/* Fixed height container for prediction form to prevent layout shifts */
#prediction-form-container {
  position: relative;
}

/* Ensure the spinner doesn't push content */
.spinner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 15px;
}

/* Remove error message text styles since we're not using text errors anymore */
.error-message, .success-message {
  display: none;
}

/* Centered spinner container for form submissions */
.centered-spinner-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  /* background-color: rgba(255, 255, 255, 0.9); */
  z-index: 10;
}

/* Regular spinner styles */
.spinner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 15px;
}

.spinner {
  width: 40px;
  height: 40px;
  border: 4px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  border-top: 4px solid #3f58d7;
  animation: spin 1s linear infinite;
}

/* Make form containers use relative positioning for absolute spinner positioning */
#form-create-display {
  position: relative;
  min-height: 200px;
}

/* Adjust animation for the spinner */
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

#example-tiles-container h3 {
  text-align: center;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 500;
}

.example-tile {
  width: 100%;
  cursor: default;
}

#example-button-container {
  display: flex;
  justify-content: center;
  width: 130px;
  height: 100px;
  margin: 20px;
}

#example-favorite-icon {
  justify-content: center;
  margin-bottom: 0;

}

.example-tiles-container {
  width: 400px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

#example-tiles-container h3 {
  text-align: center;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 500;
}

#example-scoring-container {
  display: flex;
  width: fit-content;
  height: fit-content;
}

#feedback-iframe {
  height: 550px;
  margin-bottom: 20px;
}

/* Welcome message styling for new users */
#welcome-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 300px;
  margin: 30px;
  padding: 10px 20px;
  border-radius: 5px;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  background-color: #ffffff52;
}

#welcome-message p {
  margin: 8px 0;
  font-size: 15px;
}

#welcome-message p:first-child {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 10px;
}

.color-input-group {
  display: flex;
  width: 100%;
  margin-top: 10px;
  align-items: center;
}

.username-input-group {
  display: flex;
  gap: 10px;
  margin: 0px;
  width: 100%;
}

#username-input {
  flex: 1;
  background-color: #ffffff81;
  border: 1px solid #424242;
  border-radius: 6px;
  padding: 8px 12px;
  color: #000000;
  font-size: 14px;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
}

#username-input:focus {
  border-color: #7986cb;
  outline: none;
}

#update-username-btn {
  background-color: #7986cb;
  color: white;
  border: none;
  padding: 5px 10px;
  border: 1px solid #424242;
  border-radius: 5px;
  cursor: pointer;
  font-weight: 500;
  transition: background-color 0.2s;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
}

#update-username-btn:hover {
  background-color: #5c6bc0;
}

#update-username-btn:active {
  background-color: #3f51b5;
}

#update-username-btn:disabled {
  background-color: #424242;
  cursor: not-allowed;
}

#username-status-message {
  margin: 12px 0 0 20px;
  font-size: 12px;
  color: #000000;
}

#scroll-sentinel {
  height: 20px;
  width: 100%;
  margin-bottom: 20px;
}

#loading-indicator {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 20px;
  margin: 10px 0;
  color: #757575;
  font-size: 14px;
}

#loading-indicator .spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    border-top: 4px solid #3f58d7;
    animation: spin 1s linear infinite;
  }

/* Fix for event tiles to handle scrolling better */
.center-column {
  scroll-behavior: smooth;
  overflow-y: auto;
}

#end-scroll-text {
  text-align: center;
  margin-bottom: 40px;
  color: #00000086;
}

.delete-account-section {
margin-top: auto;
}

/* Guest Mode Styles */
.guest-signup-prompt {
  border: 2px solid rgba(0, 0, 0, 0.21);
  text-align: center;
  padding: 20px;
  background: #ffffff92;
  border-radius: 8px;
  margin: 10px;
}

.guest-signup-btn {
  background-color: #eeff8db0;
  color: black;
  height: 40px;
  width: 100%;
  border-radius: 5px;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  margin-top: 10px;
  cursor: pointer;
  transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 0.4s ease, color 0.5s ease;
}

.guest-signup-btn:hover {
background-color: #defb3ccd;
transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease, color 0.5s ease;
}

.guest-disabled {
  cursor: not-allowed !important;
}

.guest-tile {
  position: relative;
}

.guest-tile::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255,255,255,0.1);
  cursor: not-allowed;
}

.guest-modal-prompt {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* For Safari support */
  transition: all 0.3s ease;
}

.guest-modal-content {
  background: rgba(255, 255, 255, 0.9);
  padding: 25px;
  border-radius: 10px;
  text-align: center;
  max-width: 400px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  border: 2px solid rgba(0, 0, 0, 0.21);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: all 0.3s ease;
  transform: scale(1);
  animation: modalAppear 0.3s ease-out forwards;
}

@keyframes modalAppear {
  0% {
    opacity: 0;
    transform: scale(0.8);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.guest-modal-content h3 {
  margin-top: 0;
  font-size: 20px;
}

.guest-modal-content button {
  margin: 10px;
  padding: 8px 16px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
}

.guest-modal-content .guest-modal-signup-btn {
  background-color: #eeff8db0;
  color: black;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 0.4s ease, color 0.5s ease;
}

.guest-modal-signup-btn:hover {
background-color: #defb3ccd;
transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease, color 0.5s ease;
}

.guest-modal-content .close-modal {
  background-color: #b1c6ff;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 0.4s ease, color 0.5s ease;
}

.close-modal:hover {
background-color: #ffb0b0;
transition: transform 0.4s ease, box-shadow 0.4s ease, background-color 1s ease, color 0.5s ease;
}

#neither-btn:active {
transform: translateX(-4px);
box-shadow: 0px 0px 0px black;
background-color: #ffb0b0;
transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#guest-modal-list {
  text-align: left;
}



#current-week-forecast-text {
  font-size: 14px;
  display: inline-block;
  padding: 5px 10px;
  border-radius: 4px;
  background-color: #ffffff52;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
}

#current-week-forecast-text.bullish-forecast {
  color: #07500b;
  background-color: rgba(162, 213, 162, 0.2);
  border: 1px solid #2e7d32;
}

#current-week-forecast-text.bearish-forecast {
  color: #690a0a;
  background-color: rgba(243, 160, 160, 0.2);
  border: 1px solid #c62828;
}

#forecast-indicator-container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  width: 100%;
}

#current-week-forecast-indicator {
  flex: 1;
  margin-left: 30px;
}

.bullish-forecast {
  color: #2e7d32;
}

.bearish-forecast {
  color: #c62828;
}

/* Streak indicator styling */
#streak-indicator {
  font-size: 14px;
  color: #555;
  display: flex;
  align-items: center;
  margin-right: 30px;
}

#streak-text {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 4px;
  background-color: #f1e95568;
  color: #333;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
}

#streak-text.high-streak {
  color: #2e7d32;
  background-color: rgba(162, 213, 162, 0.2);
}

#weekly-forecast-header-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: calc(100% - 60px);
  margin: 0 auto 10px auto;

  background-color: #ffffff52;

  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  padding: 10px;
  border-radius: 5px;
}

#weekly-forecast-header {
  font-size: 16px;
  font-weight: 500;
  margin: 0px;
  margin-bottom: 5px;
}

#weekly-forecast-subheader {
  font-size: 13px;
  color: #555;
  margin: 0px;
}

#weekly-sentiment-leaderboard-container {
  display: flex;
  height: 30px;
  justify-content: center;
  margin: 0 30px -25px auto;
  z-index: 1000;
}

#weekly-sentiment-leaderboard-btn {
  display: flex;
  background-color: #ffffff52;
  justify-content: center;
  align-items: center;
  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  border-radius: 5px;
  padding: 5px 10px;
  cursor: pointer;
}

#weekly-sentiment-leaderboard-btn:hover {
  background-color: #ffffff9a;
  scale: 1.02;
}

#weekly-sentiment-leaderboard-btn:active {
  background-color: #ffffff;
  scale: 0.99;
}

#weekly-sentiment-leaderboard-btn .material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 100, 'GRAD' 0, 'opsz' 24;
  color: #0000008d;
}

/* Weekly Sentiment Leaderboard Styles */
#sentiment-leaderboard-container {
  width: 100%;
  max-height: 100%;
  overflow-y: auto;
  padding: 8px;
  /* background-color: white; */
  border-radius: 8px;
  /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); */
}

#sentiment-leaderboard-header {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  /* background-color: #f5f5f5; */
  padding: 8px;
  border-radius: 5px;

  background-color: #ffffff52;

  border: 1px solid rgba(0, 0, 0, 0.21);
  box-shadow: 0 0 2px black;
  padding: 10px;
  border-radius: 5px;
}

#sentiment-leaderboard-header h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  margin: 0 auto;
}

#sentiment-leaderboard-back-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
}

#sentiment-leaderboard-back-btn:hover {
  opacity: 0.5;
}

#sentiment-leaderboard-loading {
  text-align: center;
  padding: 20px;
  color: #666;
}

#sentiment-leaderboard-table {
  width: 100%;
  font-size: 15px;
  border-collapse: collapse;
  margin-top: 10px;
  border-radius: 5px;
}

#sentiment-leaderboard-table th, 
#sentiment-leaderboard-table td {
  padding: 8px 12px;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

#sentiment-leaderboard-table th {
  background-color: #ffffff52;
  font-weight: bold;
}

#sentiment-leaderboard-table tr:nth-child(even) {
  /* background-color: #f9f9f9; */
}

#sentiment-leaderboard-table tr:hover {
  background-color: #ffffff52;
}

.no-data-message {
  text-align: center;
  padding: 20px;
  color: #666;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .left-column, .center-column, .right-column {
    width: 100%;
    max-width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    overflow-y: auto;
    transition: transform 0.3s ease;
    z-index: 10;
  }
  
  /* Hide left and right columns by default */
  .left-column {
    transform: translateX(-100%);
  }
  
  .center-column {
    transform: translateX(0);
  }
  
  .right-column {
    transform: translateX(100%);
  }
  
  /* Classes to toggle visibility */
  .show-left-column .left-column {
    transform: translateX(0);
  }
  
  .show-left-column .center-column {
    transform: translateX(100%);
  }
  
  .show-right-column .center-column {
    transform: translateX(-100%);
  }
  
  .show-right-column .right-column {
    transform: translateX(0);
  }
  
  /* Mobile form styling */
  .mobile-form-container {
    background-color: rgba(255, 255, 255, 0.95);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 30;
    padding: 20px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    animation: fadeIn 0.2s ease;
  }
  
  .mobile-form-content {
    width: 100%;
    max-width: 500px;
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  }
  
  .mobile-form-content h3 {
    text-align: center;
    margin-bottom: 20px;
    font-size: 1.5rem;
    color: #035FA7;
  }
  
  .mobile-form-fields {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  
  .mobile-form-fields label {
    font-weight: bold;
    margin-bottom: 5px;
  }
  
  .mobile-form-fields input,
  .mobile-form-fields textarea,
  .mobile-form-fields select {
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 16px;
  }
  
  .mobile-form-fields textarea {
    min-height: 120px;
    resize: vertical;
  }
  
  .mobile-form-fields select {
    background-color: white;
    height: 48px; /* Consistent height with inputs */
    appearance: menulist; /* Show the dropdown arrow */
  }
  
  .mobile-form-buttons {
    display: flex;
    gap: 10px;
    margin-top: 20px;
  }
  
  .mobile-form-buttons button {
    flex: 1;
    padding: 12px;
    border: none;
    border-radius: 5px;
    font-weight: bold;
    cursor: pointer;
  }
  
  .mobile-form-buttons .submit-btn {
    background-color: #035FA7;
    color: white;
  }
  
  .mobile-form-buttons .cancel-btn {
    background-color: #f1f1f1;
    color: #333;
  }
  
  /* Mobile navigation bar */
  .mobile-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background-color: #f8f8f8;
    display: flex;
    justify-content: space-around;
    align-items: center;
    z-index: 20;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
  }
  
  .mobile-nav button {
    background: none;
    border: none;
    padding: 8px;
    font-size: 13px;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #333;
  }
  
  .mobile-nav .material-symbols-outlined {
    font-size: 24px;
  }
  
  .mobile-nav button.active {
    color: #035FA7;
  }
  
  /* Mobile create menu */
  .mobile-create-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 25;
    animation: fadeIn 0.2s ease;
  }
  
  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }
  
  .mobile-create-menu-content {
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    width: 80%;
    max-width: 300px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  }
  
  .mobile-create-menu-content button {
    padding: 12px;
    border: none;
    border-radius: 5px;
    background-color: #035FA7;
    color: white;
    font-weight: bold;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.2s;
  }
  
  .mobile-create-menu-content button:hover {
    background-color: #0247a0;
  }
  
  /* Adjust content for mobile view */
  .mobile-view .box {
    width: 100%;
    margin: 10px 0;
  }
  
  /* Hide market status on right column view */
  .show-right-column #market-status-container {
    display: none;
  }
  
  /* Hide lower-left-container on mobile */
  .mobile-view #lower-left-container {
    display: none;
  }
  
  /* Hide tility score and ranking on mobile */
  .mobile-view #tility-score-display,
  .mobile-view #tility-profile-ranking {
    display: none;
  }
  
  .mobile-view #create-tile-btn-container {
    position: static;
    margin-top: 15px;
    display: flex;
    flex-direction: column;
  }
  
  .mobile-view #create-tile-btn,
  .mobile-view #create-prediction-tile-btn {
    margin: 5px 0;
  }
  
  /* Adjust form for mobile */
  .mobile-view .create-tile-form {
    width: 90%;
    max-width: 350px;
  }
  
  /* Adjust padding for content to account for mobile nav */
  .mobile-view .center-column,
  .mobile-view .left-column,
  .mobile-view .right-column {
    padding-bottom: 50px;
  }
}