/*
Theme Name: Masthuggskajen
Theme URI: https://www.frankandearnest.se
Description: Masthuggskajen Wordpresstema.
Author: Frank & Earnest
Author URI: https://www.frankandearnest.se
Template: Total
Version: 1.0
*/

:root {
    --mast-color-black: #000000;
    --mast-color-black-2: #1d1d1d;
    --mast-color-white: #ffffff;
    --mast-color-gray: #d3d3d3;
    --mast-color-gray-2: #eeeeee;
    --mast-color-gray-3: #f5f5f5;
    --mast-color-blue: #0076BC;
    --mast-color-blue-60: #0076BC60;
}

.cookies-dialog {
    background-color: var(--mast-color-white);
    border: solid 1px var(--mast-color-gray);
    color: var(--mast-color-black);
    bottom: 1.6rem;
    left: 1.6rem;
    max-height: calc(100% - 3.2rem);
    padding: 2.4rem;
    position: fixed;
    right: 1.6rem;
    width: calc(100vw - 3.2rem);
    z-index: 250;
}

.cookies-dialog__scrollarea {
    display: flex;
    height: 100%;
    flex-direction: column;
    gap: 1.6rem;
    max-height: calc(100vh - 6.4rem);
    overflow-y: auto;
}

.cookies-dialog__content {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.cookies-dialog__heading,
.CybotCookiebotDialogBodyContentHeading {
    color: var(--mast-color-black);
    font-size: 1.8rem;
    line-height: 140%;
    margin: 0;
    font-weight: 700;
}

.cookies-dialog__description {
    font-size: 1.4rem;
    line-height: 150%;
    margin: 0;
}

.cookies-dialog__links {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.cookies-dialog__links-item {
    color: var(--mast-color-blue);
    display: block;

    > .label {
        display: block;
        font-size: 1.4rem;
        font-weight: 500;
        line-height: 150%;
    }

    &:hover {
        color: var(--mast-color-blue);
    }
}

.cookies-dialog__options {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.cookies-dialog__options-item {
    border-bottom: solid 0.1rem var(--mast-color-gray-2);
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    padding: 0.8rem 0;

    > .input {
        left: -999.9rem;
        position: absolute;
    }

    > .head {
        align-items: center;
        display: flex;
        flex-direction: row;
        gap: 0.8rem;

        > .checkbox {
            cursor: pointer;
            flex: 0 0 2.4rem;
            
            > .icon {
                background-image: url("icon-plus.png");
                background-position: center;
                background-repeat: no-repeat;
                background-size: auto;
                display: block;
                height: 2.4rem;
                margin: 0;
                width: 2.4rem;
            }
        }

        > .heading {
            color: var(--mast-color-black-2);
            font-size: 1.4rem;
            font-weight: 700;
            flex: 1 0 auto;
            line-height: 200%;
        }

        > .toggle {
            align-items: center;
            cursor: pointer;
            display: flex;
            flex: 0 1 auto;
            gap: 0.8rem;

            > .slider {
                background-color: var(--mast-color-black);
                border-radius: 10rem;
                display: flex;
                padding: 0.4rem;
                transition: background-color 0.3s ease, flex-direction 0.3s ease;
                width: 4.4rem;

                &::after {
                    background-color: var(--mast-color-gray-3);
                    border-radius: 10rem;
                    content: "";
                    display: block;
                    height: 1.6rem;
                    transition: background-color 0.3s ease;
                    width: 1.6rem;
                }
            }

            > .label {
                color: inherit;

                > .on {
                    display: none;
                }

                > .off {
                    display: block;
                }
            }

            > .input {
                left: -999.9rem;
                position: absolute;

                &:checked + .slider {
                    background-color: var(--mast-color-blue);
                    flex-direction: row-reverse;

                    &::after {
                        background-color: var(--mast-color-white);
                    }
                }

                &:checked + .slider + .label {
                    > .on {
                        display: block;
                    }

                    > .off {
                        display: none;
                    }
                }

                &[disabled] + .slider {
                    background-color: var(--mast-color-blue-60);
                    cursor: default;

                    &::after {
                        background-color: var(--mast-color-white);
                    }
                }
            }
        }
    }

    > .body {
        display: none;
        font-size: 1.4rem;
        line-height: 150%;

        > p {
            margin: 0;
        }
    }

    > .input:checked + .body {
        display: block;
    }
}

.cookies-dialog__buttons {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
}

.cookies-dialog__buttons-item {
    background-color: var(--mast-color-blue);
    border: none;
    border-radius: 0.4rem;
    color: var(--mast-color-white);
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 200%;
    padding: 0.8rem;
    text-align: center;
}

@media (min-width: 768px) {

.cookies-dialog {
    bottom: 3.2rem;
    left: 3.2rem;
    right: 3.2rem;
    width: 40.0rem;
}

.cookies-dialog__heading {
    font-size: 20px;
}

}

@media (min-width: 1024px) {

.cookies-dialog {
    width: 44.0rem;
}

.cookies-dialog__scrollarea {
    gap: 2.0rem;
}

.cookies-dialog__buttons {
    gap: 1.6rem;
}

.cookies-dialog__buttons-item {
    font-size: 1.6rem;
}

}
