/* dashStyle.css */

/* remove default margin and padding */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'meta_procond_regular';
    font-size: 2vh;
}

  html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden; /* prevent scrollbars on the body */
}

/* fonts */
@font-face {
    font-family: 'edoregular';
    src: url('fonts/font1/edo-webfont.eot');
    src: url('fonts/font1/edo-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/font1/edo-webfont.woff2') format('woff2'),
         url('fonts/font1/edo-webfont.woff') format('woff'),
         url('fonts/font1/edo-webfont.ttf') format('truetype'),
         url('fonts/font1/edo-webfont.svg#edoregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'meta_procond_regular';
    src: url('fonts/font2/ffmetaprocondrg-webfont.woff2') format('woff2'),
         url('fonts/font2/ffmetaprocondrg-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/* content wrapper */
.wrapper {
    display: grid;
    grid-template-columns: 1fr 5fr;
    grid-template-rows: auto 1fr;
    height: 100vh;
    max-height: 100vh;
    overflow: hidden;
}

/* sidebar section */
.sidebar {
    background-color: #B99C71;
    grid-row: 1 / 3;
    display: flex;
    flex-direction: column;
}

/* dashboard branding and logo */
.branding {
    display: flex;
    align-items: center;
    padding: 10px;
    font-family: 'edoregular';
    font-size: 2vw;
    color: white;
    text-decoration: none;
}

.branding:hover {
    color: #282A38;
}

.logo {
    height: 3vw;
    padding-right: 10px;
}

/* sidebar links */
ul {
    list-style-type: none;
    padding-top: 3vh;
    padding-bottom: 2vh;
}

li {
    padding: 1vh;
}

.side-links {
    display: flex; 
}

.side-links:link,
.side-links:visited,
.side-links:active {
    text-decoration: none;
    color: white;
    font-weight: bold;
    font-size: 2.5vh;
}

.side-links:hover {
    color: #282A38;
}

.link-icons {
    filter: 
        invert(86%) 
        sepia(0%) 
        saturate(7474%) 
        hue-rotate(39deg) 
        brightness(118%) 
        contrast(99%);
        height: 2.5vh;
        width: auto;
        margin-right: 15px;
        margin-left: 15px;
        vertical-align: text-top;
}

a:hover .link-icons {
    filter: 
        invert(15%) 
        sepia(9%) 
        saturate(1467%) 
        hue-rotate(195deg) 
        brightness(95%) 
        contrast(93%);
}

/* header section */
.header {
    background-color: #ffffff; 
    box-shadow: 0 5px 3px -3px grey;
    position: relative;
    grid-column: 2;
    grid-row: 1;
    display: grid;
    grid-template-columns: 1fr 2fr 2fr;
    grid-template-rows: 1fr 2fr;
}

/* search bar */
.search-container {
    display: flex;
    align-items: center;
    gap: 0.5rem; 
    grid-column: 1; 
    margin-left: 1.5vw; 
    margin-top: 0.5vh;
    margin-bottom: 1vh;
}

.header input[type=search] {
    padding: 6px;
    border: none;
    margin-top: 16px;
    margin-right: 16px;
    font-size: 17px;
    min-width: 30vw;
    max-width: 45vw;
    max-height: 25px;
    border-radius: 20px;
    background: #e2e8f0; 
}

.magnify {
    height: 2.5vh;
    width: auto;
    margin-top: 16px;
}

/* large user info section */
.user-info-lg {
    display: flex;
    align-items: center;
    gap: 1rem; 
    padding-left: 2rem; 
    grid-column: 1 / 3;
}

.icon-large {
    border-radius: 50%;
    width: 8vh;
    height: auto;
    object-fit: cover; 
}

/* small user info section */
.user-info-sm {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem; 
    margin-right: 4.5vw; 
    margin-top: 0.75vh;
    margin-bottom: 1vh;
    grid-column: 3;
}

.icon-small {
    border-radius: 50%;
    width: 4.5vh;
    height: auto;
    margin: 0; 
}

.usersmall {
    font-size: 2vh;
}

/* header buttons */
.buttons {
    grid-column: 3;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem; 
    margin-top: 2vh;
    margin-right: 2vw; 
}

button {
    background-color: #B99C71;
    border: none;
    border-radius: 20px;
    color: white;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 3vh 1vw;
    padding: 8px;
    cursor: pointer;
    font-weight: bold;
    transition-duration: 0.4s;
}


button:hover {
    background-color: #E2E8F0; 
    color: #B99C71;
}

.new,
.upload,
.share {
    width: 7vw;
}

/* main content section */
.main-content {
    background-color: #e2e8f0;
    grid-row: 2;
    grid-column: 2;
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-template-rows: auto 1fr; 
    overflow: hidden; 
}

.content-header {
    font-size: 22px;
    font-weight: bold;
    padding-left: 5px;
}

/* projects section*/
.projects {
    grid-column: span 1;
    grid-row: span 2;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-height: 100%; 
    max-width: 1200px;
    margin: 0 auto; 
    overflow-y: auto; 
}

.project-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); 
    grid-template-rows: repeat(3, auto); 
    gap: 25px;
    align-content: start; 
}

.projects-card {
    background-color: white;
    border-radius: 10px;
    padding: 25px 25px 10px; 
    box-shadow: 5px 5px 3px -3px grey;
    height: auto; 
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden; 
    border-left: 0.5em solid #282A38;
}

.card-icons-container {
    display: flex;
    flex-direction: row-reverse;
    gap: 10px;
    padding-top: 30px;
}

.card-icons {
    height: 2.5vh;
    width: auto;
}

.card-icons:hover {
    filter: 
        invert(68%) 
        sepia(56%) 
        saturate(246%) 
        hue-rotate(357deg) 
        brightness(85%) 
        contrast(83%);
}

/* announcements section */
.announcements {
    padding: 20px 25px 0px;
}

.announcements-card {
    background-color: white;
    border-radius: 10px;
    box-shadow: 5px 5px 3px -3px grey;
    margin-top: 20px;
}

.announcement {
    padding: 1vw;
}

p,
p b,
i {
    font-size: 1.5vh;
}

hr {
    width: 75%;
    margin: 0 auto;
    color: #E2E8F0;
}

/* your projects and announcements large text */
b {
    color: black;
}

/* announcement small text */
p {
    color: #525252;
}

/* project card small text */
.dark-small {
    color: #525252;
    font-size: 1.75vh;
}

/* trending section */
.announcements-card,
.trending-card {
    width: 100%;
    max-width: 300px; /* or whatever fixed width you prefer */
    max-height: 50vh; /* Set maximum height */
    overflow-y: auto; /* Add scrolling if needed */
}

.trending {
    padding: 20px 25px 25px 25px;
}

.trending-card {
    background-color: white;
    border-radius: 10px;
    box-shadow: 5px 5px 3px -3px grey;
    margin-top: 20px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-height: auto;
}

.trending-icon {
    border-radius: 50%;
    width: 4.5vh;
    height: auto;
    margin: 0;
}

.trending-user, 
.first-user, 
.last-user {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1rem;
    align-items: center;
}

.user-text {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    gap: 0.25rem;
}

/* trending usernames text */
.black-small,
.user-link:link,
.user-link:visited,
.user-link:active {
    color: black;
    font-size: 1.5vh;
    text-decoration: none;
}

.user-link:hover {
    color: #B99C71;
}

/* trending user blurb text */
.user-blurb {
    font-size: 1.5vh;
    color: #525252;
}

/* modal background */
.modal {
  display: none; 
  position: fixed; 
  z-index: 1; 
  padding-top: 100px; 
  left: 0;
  top: 0;
  width: 100%; 
  height: 100%; 
  overflow: auto; 
  background-color: rgb(0,0,0); 
  background-color: rgba(0,0,0,0.4); 
}

/* modal content */
.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
}

/* close button */
.close {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

.modal-image {
    width: 400px;
    max-width: 90%;
    height: auto;
    border-radius: 10px;
}

.popup-text {
    text-align: center;
    font-size: 5vh;
}