@import url('https://fonts.googleapis.com/css2?family=Noto+Music&family=Nova+Mono&family=Work+Sans:ital,wght@0,200;0,400;0,500;1,200;1,400;1,500&display=swap');

:root {
    --background-colour: rgb(22, 24, 32);
    --header-colour: rgb(37, 40, 51);
    --border-colour: rgb(57, 61, 77);
    --border-lighter: rgb(102, 106, 122);
    --main-text: whitesmoke;
}

body {
    margin: 0px;
    font-family: 'Work Sans', sans-serif;
    color: var(--main-text);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100vh;
    background-color: var(--background-colour);
    box-sizing: border-box;
    width: 100vw;
}

.header {
    background-color: var(--header-colour);
    border-bottom: 5px solid var(--border-colour);
    
    margin: 0px;
    padding: 15px;
    padding-left: 45px;

    width: 100vw;
    transition-duration: 500ms;   
    box-sizing: border-box;
}

.header:hover {
    border-color: var(--border-lighter);
}

#headerWelcome {
    background-color: transparent;
    font-size: 40px
}

#editableHint {
    color: transparent;
    position: fixed;
    right: 20px;
    bottom: 5px;
    transition-duration: 1000ms;

}

.header:hover #editableHint {
    color: rgb(40, 43, 56);
    transition-duration: 1000ms;
}

.content {
    background-color: var(--background-colour);
    padding: 45px 30px 45px;
    margin: 0px;
    height: 100%;
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;

}

@media only screen and (max-width: 500px) {
    body {
        max-width: 100wm;
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    
    [class*="header"] {
        justify-content: center;
        align-items: center;
    }

    [id*="headerWelcome"] {
        align-items: center;
    }
    
    [id*="cell1"] {
        display: none;
    }

    [class*="notepad"] {
        display: none;
    }

    [class*="content"] {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(7, 1fr);
    }
}

.cell {
    border: 3px solid var(--border-colour);
    border-radius: 25px;
    background-color: var(--header-colour);
    padding: 0px 20px 10px;
    margin: 0px;
    transition-duration: 500ms;
    display: flex;
    flex-direction: column;
}

.cell:hover {
    border-color: var(--border-lighter);
}

.cellHeader {
    font-size: 25px;
}

#cell1 {
    grid-row-start: 1;
    grid-row-end: 3;
    position: relative;
}

#notepadButtons {
    display: inline-block;

    position: absolute;
    right: 20px;
    top: 17px;
    
    border: 2px solid var(--border-colour);
    border-radius: 10px;

    padding: 7px;
    padding-left: 20px;
    padding-right: 20px;
    cursor: pointer;

    font-size: 15px;
    background-color: var(--border-lighter);
}

.notepad textarea {
    width: 92%;
    height: 87%;
    padding: 10px;
    
    font-family: 'Work Sans', sans-serif;
    
    border: 2px solid var(--border-lighter);
    border-radius: 6px;
}

.links {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr;
    padding: 20px;
    gap: 15px;
}

.quicklink {
    border: 1px solid var(--border-lighter);
    border-radius: 10px;
    background-color: var(--border-colour);
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition-duration: 300ms;
    aspect-ratio: 1/1;
    box-sizing: border-box;
}

.quicklink img {
    width: clamp(20px, 50px, 60px)
}

.quicklink:hover {
    background-color: var(--border-lighter);
    border: 2px solid var(--border-colour);
    transition-duration: 300ms;
    box-sizing: border-box;
}

.timetableList {
    display: grid;
    grid-template-rows: 10px, 1fr 1fr 1fr 1fr;
    grid-template-columns: 1fr;

    border: 2px solid var(--border-lighter);
    border-radius: 5px;
}

.lesson {
    position: relative;
    padding: 20px 10px 20px;
}

#lessonsHeader {
    padding: 5px 10px 5px;
    text-align: center;
    text-justify: center;
    justify-content: center;
    font-style: italic;
    user-select: none;
}

#lesson1, #lesson2, #lesson3, #lesson4 {
    border-top: 1px solid var(--border-lighter);
}

#lesson1 {
    background-color: rgb(3, 169, 244);
}

#lesson2 {
    background-color: rgb(255, 152, 0);
}

#lesson3 {
    background-color: rgb(244, 67, 54);
}

#lesson4{ 
    background-color: transparent;
}

#loveText {
    color: var(--header-colour);
    transition-duration: 500ms;
    float: inline-start;
    padding: 0px;
    margin: 0px;
    position: absolute;
    left: 45px;
    top: 87px;
}

#loveHeart {
    font-size: 15px;
}

#loveText:hover {
    color: var(--border-lighter);
}