*{
    padding: 0;
    margin: 0;
}

/* TUTORIAL POP UP DESIGN */
 #tutorial-button{
    border-radius: 5px;
    padding: 3px;
    background-image: linear-gradient(to right, white, grey);
    cursor: pointer;
    border: rgba(0, 0, 0, 0.1);
    font-style: italic;
    position: fixed;
    bottom: 2rem;
    left: 1rem;
 }
 #tutorial-button:hover{
    transform: scale(1.09);
 }
.tutorial-container{
    border: none;
    height: 100%;
    width: 100%;
    background-color:rgba(0,0,0,0.5); 
    position: fixed;
    top:0;
    bottom:0;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}
.tutorial-popup{
    border: none;
    background-image: linear-gradient(to bottom right, white, grey);
    padding: 20px;
    border-radius: 8px;
    max-width: 500px;
    width: 80%;
    text-align: center;
    box-shadow:0 4px 6px rgba(0, 0, 0, 0.3);

}
#content-text{
    margin-bottom: 20px;
    font-size: 1.3rem;
}
.tutorial-popup>button{
    border:none;
    background-color: grey;
    color: white;
    font-size: 1rem;
    height: 1.5rem;
    width: 2.5rem;
    border-radius: 5px;
    margin-bottom: 10px;
    cursor: pointer;
    padding: 2px;
}
.tutorial-popup>button:hover{
    transform: scale(1.09);
    background-color: rgb(95, 95, 95);
}
#next-step-button{
    margin-left: 10px;
}
#prev-step-button{
    margin-right: 10px;
}





/*1. NAV BAR DESIGN */
.toolbox-container{
    background-color: grey;
    height: 5rem;
    width: 100%;
    display: flex;
    /* justify-content: center; -> we dont need this as we can adjust by giving margin left */
    align-items: center;
}

/* filter color button designs */
.filter-buttons{
    background-color: rgb(103, 102, 102);
    height: 3.5rem;
    width: 18rem;
    /* margin-right: 30rem; -> this is used when justify content = center is used s*/
    margin-left: 4rem;
    display: flex;
    /* gap: 1.2rem; -> this can be done with space evenly in justify content */
    justify-content: space-evenly;
    align-items: center;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.filter-buttons:hover{
    background-color: #505050;
    transform: scale(1.05); /* Slight zoom effect */
}
.color-box{
    height: 1.5rem;
    width: 3rem;
    cursor: pointer;
    border-radius: 0.2rem; /* Rounded corners */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Add subtle shadow */
    transition: transform 0.2s ease; /* Hover animation */
}
.color-box::after{

        content: attr(data-tooltip);
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        background-color: #333;
        color: white;
        padding: 5px;
        border-radius: 5px;
        font-size: 12px;
        visibility: hidden;  /* Hidden by default */
        opacity: 0;
        transition: opacity 2s ease;
        white-space: nowrap;
}
.color-box:hover{
    transform: scale(1.1); /* Enlarge slightly on hover */
}
.color-box:hover::after{

    visibility: visible;
    opacity: 1;
}

.lightpink{
    background-color: lightpink;
}
.lightgreen{
    background-color: lightgreen;
}
.lightblue{
    background-color: lightblue;
}
.black{
    background-color: black;    
}

/* action buttons design */
.action-buttons-container{
    height: 3.5rem;
    width: 8rem;
    margin-left: 4rem;
    display: flex;
    align-items: center;
}
.action-buttons-container:hover{
    transform: scale(1.05); /* Slight zoom effect */
}
.action-buttons-container>*{
    height: 100%;
    width: 50%;
    background-color: rgb(103, 102, 102);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    color: white;
    cursor: pointer;
    transition: background-color 0.3s ease; /* Add hover transition*/
}
.action-buttons-container>*::after{
    content: attr(data-tooltip);
    position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        background-color: #333;
        color: white;
        padding: 5px;
        border-radius: 5px;
        font-size: 12px;
        visibility: hidden;  /* Hidden by default */
        opacity: 0;
        transition: opacity 2s ease;
        white-space: nowrap;
}
.action-buttons-container>*:hover::after{
    visibility: visible;
    opacity: 1;
}
.add-btn:hover{
    color: rgb(16, 246, 16);
}
/* .remove-btn:hover{
    background-color: rgb(252, 40, 40);
} */
.name-logo{
     font-family: 'Lobster', cursive;
     margin-left: 42rem; 
     height: 4rem;
     width: 15rem;
     display: flex;
     justify-content: center;
     align-items: center;
     border-radius: 1000px;
     background-image: linear-gradient(to bottom right, white, grey);
     color: #505050;
}

/*2. MODAL CONTAINER */

.modal-container{
    height: 50vh;
    width:45vw;
    display: none;
    /* to make this center */
    position: absolute;
    top: 30%;
    left: 27%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
    border-radius: 8px;
    /* display: block; */
    z-index: 1000; /* to make the container remain at top of the kanban board*/
}
.text-area{
    /* to remove the text area resize option */
    resize: none;
    border: none;
    outline: none;
    background-color: #dfe4ea;
    height: 100%;
    width: 70%;
    font-size: 2rem;
    font-family:'Lobster', cursive;
    overflow-y: auto; /* if the content exceeds the text area size then allow scrolling */
    position: relative;
}
.create-button{
    height: 2rem;
    position: absolute;
    bottom: 2%;
    right: 32%;
    border-radius: 10%;
    background-color:rgb(103, 102, 102);   
    color: white;
    cursor: pointer;
    font-family:'Lobster', cursive;
}
.create-button:hover{
    transform: scale(1.05);
}
.all-priority-color-containers{
    height: 100%;
    width: 30%;
    background-color: rgb(103, 102, 102);
    display: flex;
    flex-direction: column;
    /* justify-content: center; since we use justify content space evenly this is not required */
    justify-content: space-evenly;
    align-items: center;
}
.priority-color{
    height: 3rem;
    width: 5rem;
    cursor:pointer;
    border-radius: 0.5rem;
    
}
.priority-color:hover{
     box-shadow: 1px 1px white, -1px -1px black; 
    
}

/*3. TICKET CONTAINER */

.ticket-main-container{
    /* we are going to use multiple tickets it should be displayed side by side */
    /* so we use display flex property */
    display: flex;
    gap: 2rem;
    justify-content: center;
    margin-top: 2rem;
    flex-wrap: wrap;
}
.ticket-container{
    height: 12rem;
    width: 15rem;
    background-color: wheat;
    border-radius: 8px;
    box-shadow: 0 5px 6px rgba(0, 0, 0, 0.4);
    font-family:'Lobster', cursive;
    overflow-y: auto; 
    position: relative;/* to be relative to the ticket lock*/
}
.ticket-container:hover{
    transform: scale(1.05);
}
.ticket-color{
    /* background-color: black; */
    height: 1rem;
    cursor:pointer
}
.ticket-id{
    background-color: lightcyan;
    height: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1rem;
    font-weight: bold; /*highlights the id */
}
.ticket-lock{
    display: flex;
    justify-content: flex-end;
    font-size: 1.3rem;
    /* margin-top: 100px; */
    /* margin-right: 5px; */
    cursor: pointer;
    position: sticky; /* to make it absoulte to the ticket container*/
    bottom: 2%;
    right: 2%;
}
.ticket-area{
    
    display: flex;
    flex: column;
}
/* ticket area takes the remaining space and properties of ticket container */

/* 4. add borders while selecting the filter colors while adding task in modal pop up */
.active{
    border: 3px solid red;
    box-shadow: 0 0 6px red; /*add glowing effect*/
}


/* MEDIA QUERIES FOR DIFFERENT SCREEN SIZES */
/* For Tablets and Smaller Devices (<= 1024px) */
@media screen and (max-width: 1280px) {
    /* Adjust the logo container */
    .name-logo {
        font-size: 1rem;
        margin-left: 0%;  /* Decrease margin to fit the logo */
        width: 15rem;  /* Reduce width */
        margin-top: 0.5rem;
    }

    /* Adjust the toolbox container to allow the filter buttons to fit */
    .toolbox-container {
        height: auto;  /* Let it adjust height */
        flex-direction: column;  /* Stack the filter buttons vertically */
        justify-content: center;
        align-items: center;
        padding: 1rem;
    }

    /* Adjust filter button container */
    .filter-buttons {
        width: 90%;  /* Make the buttons take full width */
        margin-left: 0;  /* Remove the left margin */
        margin-top: 1rem; /* Add some spacing from the top */
        justify-content: space-around;  /* Distribute space evenly */
        
    }

    /* Make the action buttons smaller */
    .action-buttons-container {
        width: 80%;  /* Adjust width */
        margin-left: 0;  /* Remove left margin */
        justify-content: space-evenly;  /* Distribute buttons evenly */
        margin-top: 0.2rem;
    }
}

/* For Mobile Screens (<= 768px) */
@media screen and (max-width: 768px) {
    /* Adjust the logo to be smaller and centered */
    .name-logo {
        font-size: 1rem;
        width: 15rem;
        margin-left: 33%;  /* Center the logo */
        transform: translateX(-50%);  /* Centering trick */
        margin-top: 0.4rem;
    }

    /* Make the toolbox container stack vertically and have some padding */
    .toolbox-container {
        flex-direction: column;
        height: auto;
        padding: 0.5rem;
    }

    /* Adjust the filter buttons */
    .filter-buttons {
        width: 95%;
        margin-left: 0;
        margin-top: 1rem;
        justify-content: space-evenly;  /* Distribute evenly */
    }

    /* Make the action buttons container take full width */
    .action-buttons-container {
        width: 80%;  /* Take up full width */
        margin-left: 0;
        margin-top: 0.2rem;
        justify-content: space-evenly;
    }

    /* Adjust color boxes in filter buttons */
    .color-box {
        width: 2rem;  /* Make color boxes smaller */
        height: 1.2rem;
    }
    .modal-container{
        position: absolute; /* will be relative to whole body*/
        top: 25%;  
        right: 5%;
        left: 5%;
        width: auto; 
    }

    /* Adjust ticket container for small screens */
    .ticket-main-container {
        gap: 1rem;
        justify-content: center;  /* Stacking tickets vertically */

    }

    .ticket-container {
        width: 90%;  /* Take full width on small screens */
        margin-top: 1rem;
        align-items: center;
    }
}

/* For Very Small Mobile Screens (<= 480px) */
@media screen and (max-width: 480px) {
    /* Make the logo smaller */
    .name-logo {
        font-size: 0.6rem;
        width: auto;
        height: auto;
        margin-top: 2%;
        padding: 0.2rem;
    }

    /* Stack the toolbox container with tighter padding */
    .toolbox-container {
        flex-direction: column;
        padding-left: 0.2rem;
        padding-right: 0.2rem;
        
    }

    /* Adjust filter button container width */
    .filter-buttons {
        width: 95%;  /* Full width */
        margin-top: 1rem;
    }

    /* Adjust action buttons */
    .action-buttons-container {
        width: 75%;
        margin-top: 0.5rem;
    }
    /* modal-container pop-up adjustment  */
    .modal-container{
        position: absolute; /* will be relative to whole body*/
        top: 25%;  
        right: 5%;
        left: 5%;
        width: auto; /* it will be adjusted as per the screen size since it is positioned absolute to whole body*/
    }

    /* if we give width and height to auto then there is a glitch so that the filter buttons are vanished or moved some where */
    /*  so for mobile screens we don t need to set height and width to auto 
        .color-box {
        width: auto;
        height: auto;
    } */

    /* Stacking tickets vertically */
    .ticket-main-container {
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }

    .ticket-container {
        width: 85%;  /* Full width on small screens */
        margin-top: 1rem;

    }
}

