/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: #212121;
    justify-content: center;
    align-items: center;
}

a{
    text-decoration: none;
}

.logoimg{
    height: 3.75vw;
}

.name{
    font-size: 1.6em;
    font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
    font-weight: 900;
    color: white;
}

nav{
    display: flex;
    justify-content: center;
    
    padding: 1vw;
    width: 100vw;
    background-color: #000000;
    position: fixed;
      top: 0;
      width: 100%;
      transition: transform 0.2s ease-out;
      z-index: 1000;
      
}
nav.hidden {
    transform: translateY(-100%);
    
    }

.nav-right{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.1vw;
}
.home-link
{
    color: white;
    background-color: #E95060;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-weight: 600;
    font-size: 1.1vw;
    padding: 0.4vw 0.75vw;
    border-radius: 5px;
    
   
}

.ph-link,
.docs-link,
.prof-link{
    color: white;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-weight: 600;
    font-size: 1.1vw;
   transition: all ease-in-out 0.3s;
   display: inline-block;
    
    outline: 0 !important;
  border: 0 !important;
    &:hover{
        color: #E95060;
        border-radius: 20px;
        transform: scale(1.05) translateY(-0.1vw);

           
    }
}

.nav-left{
    display: flex;
    justify-content: center;
    gap: 2vw;
}



main {
    flex: 1;
    padding: 1em;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

#graph {
    border: 1px solid #ccc;
    padding: 1em;
    margin-bottom: 1em;
    width: 80%;
    background-color: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

#details {
    width: 80%;
    background-color: rgb(0, 0, 0);
    color: white;
    padding: 5vh;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    display: flex;
    justify-content: center;
    margin-top: 20vh;
}

form {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 600px; /* Ensures the form doesn't stretch too wide */
}

form label {
    margin: 0.5em 0 0.2em 0;
    font-weight: bold;
}

form input {
    padding: 0.5em;
    margin-bottom: 1em;
    border: 1px solid #ccc;
    border-radius: 5px;
}

form button {
    padding: 0.7em;
    font-size: 0.9em;
    background-color: #a9ccff;
    color: #000000;
    border: none;
    font-weight: 600;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
}

form button:hover {
    background-color: teal;
}

footer {
    background-color: black;
    color: whitesmoke;
    text-align: center;
    padding: 1em;
    width: 100%;
    margin-top: 15.5vh;
    height: 10vh;
    box-sizing: border-box;
}

/* Media Queries for Responsive Design */
@media (max-width: 1024px) {
    .logoimg {
        height: 5vw;
    }

    .name {
        font-size: 1em;
    }

    nav {
        flex-direction: column;
        gap: 2vw;
    }

    .home-link,
    .ph-link,
    .docs-link,
    .prof-link {
        font-size: 3vw;
    }
}

@media (max-width: 768px) {
    .logoimg {
        height: 7vw;
    }

    .name {
        font-size: 0.8em;
    }

    nav {
        flex-direction: column;
        gap: 2vw;
    }

    .home-link,
    .ph-link,
    .docs-link,
    .prof-link {
        font-size: 4vw;
    }

    header {
        height: auto; /* Adjust height for smaller screens */
        padding: 2em;
    }
}

@media (max-width: 480px) {
    .logoimg {
        height: 10vw;
    }

    .name {
        font-size: 0.6em;
    }

    nav {
        flex-direction: column;
        gap: 2vw;
    }

    .home-link,
    .ph-link,
    .docs-link,
    .prof-link {
        font-size: 5vw;
    }

    header {
        height: auto; /* Adjust height for smaller screens */
        padding: 2em;
    }
}

