
.jdgm-review-widget-modal.jdgm-write-review-modal {

    .jdgm-write-review-modal__overlay {
        background: rgb(var(--theme-typo));
    }

    @media only screen and (min-width: 768px) and (min-height: 641px) {
        .jdgm-write-review-modal__content {
            border-radius: var(--common-radius);
            padding: 2em 3em;
        }
    }

    .jdgm-write-review-modal__close-btn {
        width: 24px;
        height: 24px;
        padding: 0;
        svg {
            display: none;
        }
        &::before,
        &::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: var(--close-w);
            height: var(--close-bar);
            border-radius: var(--close-bar);
            background: rgb(var(--theme-typo));
        }
        &::before {
            transform: translate(-50%, -50%) rotate(45deg);
        }
        &::after {
            transform: translate(-50%, -50%) rotate(-45deg);
        }
    }

    .jdgm-write-review-modal__form-group {
        gap: 1em;
    }

    .jdgm-write-review-modal__field-input {
        border: 1px solid rgba(var(--theme-typo), .25);
        border-radius: .25rem;
        padding: 1em;
        @media (pointer: coarse) {
            font-size: max(16px, 1em);
        }

        background: #fff;
        color: rgb(var(--theme-typo));
        &::placeholder {
            color: rgba(var(--theme-typo), .5);
        }
        &:focus {
            border-color: rgb(var(--theme-accent));
            outline: none;
        }
    }
    .jdgm-write-review-modal__field-label {
        color: rgb(var(--theme-typo));
    }

    .jdgm-write-review-modal__checkbox-input:not(:checked) + .jdgm-write-review-modal__checkbox-custom {
        border-color: var(--check-edge-color);
    }

    .jdgm-write-review-modal__nav-btn-next,
    .jdgm-write-review-modal__nav-btn-close {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 1.25em;
        padding: 1em 1.75em;
        border: none;
        border-radius: var(--button-radius);
        background: rgb(var(--theme-brand));
        color: rgb(var(--theme-body));
        box-shadow: 0 0 0 1px rgb(var(--theme-brand)) inset;
        transition: all .4s ease-in-out;
        &::after {
            content: '';
            width: .9em;
            height: .9em;
            flex-shrink: 0;
            background: currentColor;
            mask: var(--btn-arrow) no-repeat center / contain;
            -webkit-mask: var(--btn-arrow) no-repeat center / contain;
        }
        &:hover {
            background: rgb(var(--theme-accent));
            color: rgb(var(--theme-body));
            box-shadow: 0 0 0 1px rgb(var(--theme-accent)) inset;
            opacity: 1;
        }

        &:disabled {
            background: rgba(var(--theme-brand), .4);
            box-shadow: none;
        }
    }

    .jdgm-write-review-modal__nav-btn-back {
        color: rgb(var(--theme-typo));
        &:hover {
            color: rgb(var(--theme-accent));
            opacity: 1;
        }
    }
}

.jdgm-widget.jdgm-cards-carousel .jdgm-arrows--bottom {
    justify-content: flex-start;
    gap: .5em;
    .jdgm-arrow {
        width: 3em;
        height: 3em;
        border-radius: 50%;
        color: rgb(var(--theme-brand));
        transition: all .4s ease-in-out;

        position: relative;
        &::before {
            position: absolute;
            inset: 0;
            margin: auto;
        }
        &:hover {
            background: rgb(var(--theme-brand));
            color: rgb(var(--theme-body));
            opacity: 1;
        }
    }
}

.jdgm-modal.jdgm-widget-revamp {

    .jm-slide,
    .jm-content {
        background: rgb(var(--theme-body));
    }
    .jm-slide {
        border-radius: var(--common-radius);
    }
    .jm-content {
        padding: var(--gutter);
    }

    .jdgm-modal__container--content-only {
        align-self: center;
        height: auto;

        max-height: calc(100dvh - var(--gutter) * 2);
    }

    .jm-indicator {
        top: 1rem;
        right: 1rem;
        bottom: auto;
        left: auto;
        padding: 0!important;
    }

    .jm-indicator__close {
        position: relative;
        color: rgb(var(--theme-typo));
        width: var(--close-w);
        height: var(--close-w);
        padding: 0;
        background: none;
        border-radius: 0;
        transition: opacity .4s ease;
        &:hover {
            opacity: .6;
        }
        svg {
            display: none;
        }
        &::before,
        &::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: var(--close-w);
            height: var(--close-bar);
            border-radius: var(--close-bar);
            background: currentColor;
        }
        &::before {
            transform: translate(-50%, -50%) rotate(45deg);
        }
        &::after {
            transform: translate(-50%, -50%) rotate(-45deg);
        }
    }

    .jm-review-content__title {
        font-size: 1.3em;
        font-weight: var(--font-heading-weight, 500);
    }
    .jm-reviewer-info__name {
        font-weight: var(--font-body-weight, 400);
    }

    .jm-product-variant-card {
        border-radius: var(--common-radius);
    }

    .jm-slide,
    .jm-content {
        height: auto;
        max-height: calc(100dvh - var(--gutter) * 2);
    }

    @media screen and (max-width: 749px) {
        .jdgm-modal__content {
            padding: var(--gutter);
        }
    }
}
