@layer genr.component {
    .biscuit-consent__content {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .biscuit-consent__footer {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 1rem;
        margin-top: 2rem;
    }

    .biscuit-consent__button {
        border-radius: 3rem;
    }

    .biscuit-accordion {
        &::details-content {
            block-size: 0;
            opacity: 0;
            overflow-y: clip;
            transition: content-visibility var(--transition-duration) allow-discrete, block-size var(--transition-duration), opacity var(--transition-duration) ease;
        }

        &[open] {
            &::details-content {
                block-size: auto;
                opacity: 1;
            }

            .biscuit-accordion__icon {
                .icon {
                    transform: rotate(45deg);
                }
            }
        }

        &:not(:last-child) {
            padding-bottom: 1rem;
            border-bottom: 1px solid var(--color-border);
        }
    }

    .biscuit-accordion__summary {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-inline: -0.5rem;
        padding: 0.5rem;
        border-radius: 3rem;
        cursor: pointer;
        transition: calc(var(--transition-duration) / 2);

        &:hover {
            background-color: var(--color-darker-green);

            .biscuit-accordion__icon {
                color: var(--color-white);
                background-color: var(--color-signal-violet);
                border-color: var(--color-signal-violet);

                .icon {
                    color: var(--color-white);
                }
            }
        }
    }

    .biscuit-accordion__icon {
        display: flex;
        align-items: center;
        justify-content: center;

        .icon {
            transition: var(--transition-duration);
        }
    }

    .biscuit-accordion__body {
        padding-block: 1rem;
    }
}
