root {
    --btn-border-hover-degree: 90deg;
}

html {
    box-sizing: border-box;
    font-size: 16px;
    color: #000;
}

body {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: auto 30%;
    margin: 0rem;

}

header {
    grid-row: 1;
    grid-column: span 2;
    background-color: #eee;
    box-shadow: 0px 0.25rem 0.25rem #777;
    justify-items: center;
}

.header-title h1 {
    margin: 0.25rem;
}

main {
    grid-row: 2;
    grid-column: span 1;
    padding: 0.5rem;
    min-width: 30%;
    max-width: 60%;
    display: grid;
    grid-template: auto auto auto auto;
}


.todo-container {
    display: grid;
    grid-gap: 0.5rem;
    grid-auto-rows: max-content;
    grid-auto-columns: max-content;
    padding: 0.5rem;

}

.todo-item-container {
    background-color: #eee;
    border-radius: 0.5rem;
    display: grid;
    grid-template-rows: auto auto auto;
    grid-template-columns: 0.5rem auto auto;
    box-shadow: 0.125rem 0.125rem 2rem #aaa;
    width: fit-content;
}

.todo-item-color-sidebar {
    width: 0.5rem;
    grid-row: span 3;
    grid-column: 1;
    background-color: #a0a;
    border-radius: 0.5rem 0rem 0rem 0.5rem;
    box-shadow: -0.125rem 0rem 0.5rem #a0a;
}

.todo-item-checkbox-container {
    grid-row: 1;
    grid-column: 2;
    display: flex;
    align-content: baseline;
    justify-content: left;
    padding: 0.5rem;

    width: min-content;
}

.todo-item-checkbox-container input[type="checkbox"] {
    scale: 1.5;
    cursor: pointer
}

.todo-item-title-container,
.todo-item-description-container,
.todo-item-additional-information-container {
    grid-column: 3;
    padding: 0.5rem;
    padding-left: 0rem;
    text-wrap: wrap pretty;
}

.todo-item-title-container {
    grid-row: 1;
    align-content: baseline;
    text-shadow: 0.5px 0.25px 0.9px rgb(228, 1, 228)
}

.todo-item-description-container {
    grid-row: 2;
    align-content: top;
}

.todo-item-additional-information-container {
    grid-row: 3;
    align-content: top;
}

aside {
    height: calc(100vh - 45px - 16px);
    grid-row: 2;
    grid-column: 2;
    padding: 0.5rem;
    box-shadow: -0.125rem 0rem 2rem #aaa;
    min-width: 90%;
    max-width: 200%;
    overflow-y: scroll;
}


.todo-form {
    display: grid;
    grid-template-columns: max-content auto;
    grid-gap: 0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
.todo-form :required {
    background-color: rgba(170, 0, 170, 0.1);
    border-width: 2px;
    border-color: #a00
}

.todo-form label {
    grid-column: 1;

    align-content: baseline;
    text-align: right;
    padding-right: 0.25rem;
}

.todo-form input,
.todo-form textarea {
    grid-column: 2;
    font-size: 1rem;
    background-color: #eee;
    box-shadow: 1px 1px 3px #aaa inset;
    border-radius: 0.375rem;
    border-color: #333;
}

.todo-form textarea {
    height: 6rem;
    max-height: 32vh;
    resize: vertical;
}

.todo-form button {
    width: 9rem;
    height: 3rem;
    font-weight: 700;
    border: 0.25rem solid transparent;
    transition: all 0.1s ease-in-out;
     border-radius: 2rem;

    &:hover {
        background-origin: border-box;
        background-clip: padding-box, border-box;
        background-image:
            linear-gradient(white, white), linear-gradient(160deg, rgb(170, 0, 170), rgba(255, 255, 255, 0.705), rgb(170, 0, 170), rgba(255, 255, 255, 0.527));
    &:active {
        box-shadow: 3px 4px 8px #333;
    }
    }
}

#reset-inputs-button {
    justify-self: right;
}

.notification-box-top-right {
    display: block;
    position: absolute;
    width: 300px;
    height: 30px;
    color: white;
    justify-self: right;
    top: -5rem;
    align-content: center;
    background-color: green;
    margin: 0.5rem;
    padding: 0.5rem;
    font-size: 1.125rem;
    border-radius: 0.5rem;
    box-shadow: 0.25rem 0.25rem 0.5rem rgba(0, 150, 0, 0.95);
    transition: all 2s ease-in-out;

}

.notification-box-top-right.active {
    top: 0rem;
}


@keyframes btn-border-hover-effect {
    0% {
        --btn-border-hover-degree: 0deg;
    }

    50% {
        --btn-border-hover-degree: 180deg;
    }

    100% {
        --btn-border-hover-degree: 360deg;
    }

    /* 0% {
        --btn-border-hover-degree: 0deg;
    }
    3.885% {
        --btn-border-hover-degree: 12.25deg;
    }
    6.75% {
        --btn-border-hover-degree: 24.5deg;
    }
    12.5% {
        --btn-border-hover-degree: 45deg;
    }
    16.405%{
        --btn-border-hover-degree: 57.25deg;
    }
    19.25% {
        --btn-border-hover-degree: 77.25deg;
    }
    25% {
        --btn-border-hover-degree: 90deg;
    }
    50% {
        --btn-border-hover-degree: 180deg;
    }
    
    100% {
        --btn-border-hover-degree: 360deg;
    } */


    /* background-image:
        linear-gradient(white, white), linear-gradient(90deg, rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9), rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9));
    }
    25% {
        background-image:
        linear-gradient(white, white), linear-gradient(180deg, rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9), rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9));
    }
    50% {
        background-image:
        linear-gradient(white, white), linear-gradient(270deg, rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9), rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9));
    }
    75% {
        background-image:
        linear-gradient(white, white), linear-gradient(360deg, rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9), rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9));
    }
    100% {
        background-image:
        linear-gradient(white, white), linear-gradient(450deg, rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9), rgba(170, 0, 170, 0.9), rgba(255, 255, 255, 0.9));
    } */
}