:root {
    /* Primary colors */
    --orange: hsl(26, 100%, 55%);
    --pale-orange: hsl(25, 100%, 94%);
    --hover-orange: hsl(26, 100%, 80%);
    /* Neutral colors */
    --very-dark-blue: hsl(220, 13%, 13%);
    --dark-grayish-blue: hsl(219, 9%, 45%);
    --grayish-blue: hsl(220, 14%, 75%);
    --light-grayish-blue: hsl(223, 64%, 98%);
    --white: hsl(0, 0%, 100%);
    --black: hsl(0, 0%, 0%);

    /* Font size */
    --font-size: 16px;

    /* Font weight */
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;

    /* Font family */
    --font-family: "Kumbh Sans", serif;

    /* Border radius */
    --border-radius: 5px;

    /* Border */
    --border: 1px solid var(--grayish-blue);

    /* Box shadow */
    --box-shadow: 0px 10px 34px 0px rgba(255, 237, 224, 0.75);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    font-family: var(--font-family);
    background-color: white;
}

.container {
    width: 100vw;
    margin: auto;
    overflow: auto;
}

.center {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--grayish-blue);
    font-size: .9rem;
    margin: 20px 0;
    padding: 50px 0;
}

.hidden {
    display: none;
}

/* Header */
header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;

    .right-header {
        display: flex;
        column-gap: 15px;
        align-items: center;

        .cart-icon {
            margin-top: 15px;
            position: relative;

            svg {
                font-size: 1.5rem;
                color: var(--very-dark-blue);
                & path{
                    fill: var(--grayish-blue);
                }
                &:hover{
                    cursor: pointer;
                }
                &:hover path {
                    fill: var(--very-dark-blue);
                }
            }

            .cart-count {
                position: absolute;
                top: -10px;
                right: -10px;
                background-color: var(--orange);
                color: var(--white);
                padding: 5px 10px;
                border-radius: 40%;
                font-size: .7rem;
                font-weight: bold;
                display: none;
            }
        }

        .avatar {
            width: 30px;
            height: 30px;
            border-radius: 50%;
            overflow: hidden;

            &:hover {
                border: 2px solid var(--orange);
            }

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }
    }

    .left-header {
        display: flex;
        column-gap: 15px;
        align-items: center;

        .menu-toggle {
            display: none;
            /* Hide the checkbox */
        }

        .menu-toggle:checked~.menu {
            left: 0;
            /* Show the menu when the menu-toggle checkbox is checked */
            display: block;
            /* Show the menu when the menu-toggle checkbox is checked */
        }

        .logo {
            display: none;
        }

        .menu {
            position: absolute;
            top: 0 !important;
            left: 0;
            z-index: 4 !important;
            background: var(--white);
            height: 140%;
            width: 70%;
            overflow: auto;
            display: none;
            padding: 25px;
            transition: left 0.3s ease;

            nav {
                display: flex;
                flex-direction: column;
                row-gap: 25px;
                margin-top: 30px;
                padding-top: 20px;

                a {
                    font-family: var(--font-family);
                    font-size: 1em;
                    font-weight: var(--font-weight-bold);
                    color: var(--very-dark-blue);
                    text-decoration: none;
                    cursor: pointer;
                }
            }
        }

        h1 {
            font-size: 1.5rem;
            font-weight: var(--font-weight-bold);
            color: var(--very-dark-blue);
            padding-bottom: 5px;
            display: none;
        }
    }
}

/* Main */
main {
    position: static;
    z-index: -1;

    .cart {
        position: absolute;
        z-index: 2;
        background: var(--white);
        width: min(95%, 400px);
        display: flex;
        display: none;
        justify-content: center;
        align-items: center;
        flex-direction: row;
        top: 230px;
        left: 50%;
        transform: translate(-50%, -50%);
        border-radius: var(--border-radius);
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.4);
        padding: 30px 0;

        .pad {
            padding: 0 30px;
        }

        .inner-cart {
            width: 100%;
        }

        h2 {
            color: var(--very-dark-blue);
            font-size: 1em;
            margin-bottom: 20px;
            border-bottom: var(--border);
            padding-bottom: 25px !important;
        }

        .cart-item {
            display: flex;
            justify-content: space-between;
            column-gap: 20px;

            .cart-item-image {
                width: 60px;
                height: 50px;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                    border-radius: var(--border-radius);
                }
            }

            h3,
            p {
                font-size: .8rem;
                color: var(--grayish-blue);
                font-weight: var(--font-weight-regular);
                margin-top: 5px;
            }

            p {
                color: var(--dark-grayish-blue);
            }

            .true-price {
                color: var(--very-dark-blue);
                margin-left: 10px;
                font-weight: var(--font-weight-bold);
            }

            .cart-item-remove {
                cursor: pointer;
                display: flex;
                align-items: center;
            }
        }

        .checkout {
            margin-top: 20px;
            width: 100%;

            button {
                padding: 13px 20px;
                box-shadow: var(--box-shadow);
                background-color: var(--orange);
                color: var(--white);
                font-size: .9rem;
                font-weight: var(--font-weight-bold);
                border: none;
                border-radius: var(--border-radius);
                cursor: pointer;
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                color: var(--very-dark-blue);
                font-family: var(--font-family);

                &:hover {
                    background-color: var(--hover-orange);
                    cursor: pointer;
                }
            }
        }
    }

    .main-body {
        display: flex;
        justify-content: center;
        flex-direction: column;
        position: relative;
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 500px;

        .light-box {
            display: none;
            flex-direction: column;
            row-gap: 20px;
            position: fixed;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 100%;
            transform: translate(-50%, -50%);
            background: rgba(0, 0, 0, 0.5);
            z-index: 3;
            justify-content: center;
            align-items: center;
            border: var(--border);

            .inner-light {
                display: flex;
                flex-direction: column;
                justify-content: center;
                row-gap: 20px;
                width: 450px;
                position: relative;
                padding-top: 30px;
            }

            #close-icon {
                position: absolute;
                top: 0;
                right: 0;

                &:hover {
                    color: var(--orange);
                    cursor: pointer;
                }

                &:hover path {
                    fill: var(--orange);
                }

                & path {
                    fill: var(--white);
                }
            }

            #light-active {
                object-fit: cover;
                aspect-ratio: 10/9;
                border-radius: var(--border-radius);
            }

            .arrows-class {
                position: absolute;
                width: 100%;
                display: flex;
                justify-content: space-between;
                align-items: center;
                top: 50%;
                margin-top: -50px !important;

                .arrow {
                    background: var(--white);
                    padding: 10px;
                    border-radius: 50%;
                    width: 40px;
                    height: 40px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    cursor: pointer;

                    &:hover svg path {
                        stroke: var(--orange);
                    }

                    svg {
                        color: var(--very-dark-blue);
                        font-size: 1.5rem;
                    }
                }
            }

            .thumb {
                background-color: var(--white);
                border-radius: var(--border-radius);
            }

            .thumb-light {
                display: grid;
                grid-template-columns: repeat(4, 1fr);
                column-gap: 10px;
                margin-top: 20px;
                padding: 0 20px;

                img {
                    vertical-align: top;
                    width: 100%;
                    aspect-ratio: 1/1;
                    object-fit: cover;
                    border-radius: var(--border-radius);
                    cursor: pointer;

                    &:hover {
                        filter: opacity(60%);
                    }
                }

                /* justify-content: space-around;
                box-sizing: border-box !important;
                align-items: center; */
            }

            .active-thumb {
                img {
                    border: 3px solid var(--orange) !important;
                    opacity: 0.5;
                }
            }
        }

        .active-product-container img {
            width: 100%;
            height: auto;
            max-width: 100%;
            aspect-ratio: 5/4;
            position: relative;
        }

        .active-product-container {
            .thumbnails {
                display: none;
            }
        }

        .arrows {
            display: flex;
            z-index: 1;
            position: absolute;
            justify-content: space-between !important;
            top: 110px;
            align-items: center;
            margin-top: 20px;
            width: 100%;

            .arrow {
                scale: .6;
                background-color: var(--white);
                padding: 10px;
                border-radius: 50%;
                width: 55px;
                height: 55px;
                display: flex;
                justify-content: center;
                align-items: center;
                cursor: pointer;
                box-shadow: var(--box-shadow);

                svg {
                    color: var(--very-dark-blue);
                    font-size: 1.5rem;
                }
            }
        }

        .products-details {
            padding: 20px 30px;

            h3 {
                text-transform: uppercase;
                color: var(--dark-grayish-blue);
                font-size: .7rem;
                font-weight: var(--font-weight-bold);
                margin-bottom: 10px;
                letter-spacing: 2px;
            }

            h2 {
                /* width: 90%; */
                color: var(--very-dark-blue);
                font-size: 1.5rem;
                margin-bottom: 10px;
                line-height: 25px;
            }

            p {
                color: var(--dark-grayish-blue);
                font-size: .8rem;
                margin-bottom: 20px;
                line-height: 20px;
                word-spacing: 3px;
            }
        }

        .price-container {
            position: relative;
            display: flex;
            z-index: 1;
            justify-content: space-between;

            h2 {
                color: var(--very-dark-blue);
                display: inline;
            }

            span {
                color: var(--white);
                background-color: var(--very-dark-blue);
                padding: 3px 10px;
                font-size: .8rem;
                margin-left: 10px;
                border-radius: var(--border-radius);
            }

            p {
                color: var(--dark-grayish-blue);
                font-size: .8rem;
                font-weight: var(--font-weight-bold);
                position: relative;
            }

            p.original-price::after {
                content: '';
                position: absolute;
                left: 0;
                right: 0;
                top: 50%;
                bottom: 0.2em;
                /* Adjust this value to move the line up or down */
                height: 1px;
                /* Adjust thickness as needed */
                background-color: currentColor;
                /* Use the current text color */
                transform: translateY(50%);
            }
        }

        .product-number {
            display: flex;
            column-gap: 10px;
            justify-content: space-between;
            align-items: center;
            margin-top: 20px;
            background: var(--light-grayish-blue);
            padding: 13px 20px;
            font-weight: var(--font-weight-bold);
            color: var(--orange);
            border-radius: var(--border-radius);
            margin-bottom: 15px;
            vertical-align: 0;
            border: none;

            .plus,
            .minus {
                cursor: pointer;
                font-size: 1.5rem;
                display: inline;
                padding: 0;
                margin: 0;
                text-decoration: none;
                all: unset;

                &:active {
                    background-color: var(--light-grayish-blue) !important;
                }

                &:hover {
                    background-color: var(--light-grayish-blue) !important;
                }

                &:focus {
                    background-color: var(--light-grayish-blue) !important;
                }
            }

            .count {
                font-size: .9rem;
                color: var(--very-dark-blue);
            }
        }

        .add-to-cart {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin: 20px 0;

            button {
                padding: 13px 20px;
                box-shadow: var(--box-shadow);
                background-color: var(--orange);
                color: var(--white);
                font-size: .9rem;
                font-weight: var(--font-weight-bold);
                border: none;
                border-radius: var(--border-radius);
                cursor: pointer;
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                color: var(--very-dark-blue);
                font-family: var(--font-family);

                &:hover {
                    background-color: var(--hover-orange);
                    cursor: pointer;
                }

                svg {
                    scale: .7;
                    font-weight: var(--font-weight-bold);
                    margin-right: 10px;
                    color: var(--very-dark-blue);
                }
            }
        }
    }
}