.opinion-scale ul
{
    list-style: none;
    margin: 0;
    padding: 0;
}
.opinion-scale .opinion-scale-scales
{
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(50px,1fr));
    grid-gap: 0;
}
.opinion-scale .opinion-scale-scales>*>label
{
    display: block;
    padding: 6px 12px;
    margin: 0 0 5px;
    border: 1px solid #ccc;
    border-left: none;
    white-space: nowrap;
    text-align: center;
    color: #000!important;
    cursor: pointer;
}
.opinion-scale .opinion-scale-scales>* input
{
    position: absolute;
    left: -9999px;
    top: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    visibility: hidden;
}
.opinion-scale .opinion-scale-scales>* input:checked~label
{
    background: #e6e6e6;
}
.opinion-scale .opinion-scale-scales>*:first-child>label
{
    border-left: 1px solid #ccc;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}
.opinion-scale .opinion-scale-scales>*:last-child>label
{
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}
.opinion-scale ul.opinion-scale-legends
{
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(50px,1fr));
    grid-gap: 0;
}
.opinion-scale ul.opinion-scale-legends li
{
    text-align: center;
}
.opinion-scale ul.opinion-scale-legends li:first-child
{
    text-align: left;
}
.opinion-scale ul.opinion-scale-legends li:last-child
{
    text-align: right;
}
.freeform-file-dnd__input
{
    --accent: #3a85ee;
    padding: 67px 20px;
    height: auto;
    border-radius: 7px;
    border: 2px dashed var(--accent);
    background: #fff;
    color: #282828;
    text-align: center;
    cursor: pointer;
}
.freeform-file-dnd__input input[type=file]
{
    display: none!important;
}
.freeform-file-dnd__input [data-placeholder]
{
    font-size: 1.25rem;
}
.freeform-file-dnd__input[data-dragging]
{
    border-style: solid;
    background-color: #e7e7e7;
    color: #c6c6c6;
}
.freeform-file-dnd__input[data-contains-files]
{
    padding: 20px;
}
.freeform-file-dnd__input[data-contains-files] [data-placeholder]
{
    display: none;
}
.freeform-file-dnd__input [data-messages], .freeform-file-dnd__input [data-field-errors]
{
    margin: 0;
    padding: 0 20px;
}
.freeform-file-dnd__input [data-messages]>li, .freeform-file-dnd__input [data-field-errors]>li
{
    margin: 0;
    padding: 0;
    text-align: left;
    opacity: 1;
    transition: all .3s ease-out;
}
.freeform-file-dnd__input [data-messages]>li[data-error], .freeform-file-dnd__input [data-field-errors]>li[data-error]
{
    color: #ff0300;
}
.freeform-file-dnd__input [data-messages]>li[data-animate-fade-out], .freeform-file-dnd__input [data-field-errors]>li[data-animate-fade-out]
{
    opacity: 0;
}
.freeform-file-dnd__input [data-field-errors]>li
{
    color: #ff0300;
}
.freeform-file-dnd__input [data-preview-zone]
{
    display: grid;
    grid-template-columns: repeat(1,1fr);
    gap: 20px;
}
@media(min-width: 576px)
{
    .freeform-file-dnd__input [data-preview-zone]
    {
        grid-template-columns: repeat(2,1fr);
    }
}
@media(min-width: 768px)
{
    .freeform-file-dnd__input [data-preview-zone]
    {
        grid-template-columns: repeat(4,1fr);
    }
}
@media(min-width: 992px)
{
    .freeform-file-dnd__input [data-preview-zone]
    {
        grid-template-columns: repeat(8,1fr);
    }
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview]
{
    cursor: initial;
    opacity: 1;
    transform: scale(1);
    transition: all .3s ease-out;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview].animation-enter
{
    opacity: 0;
    transform: scale(.1);
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview]:hover
{
    z-index: 2;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail]
{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    background-size: cover;
    background: #969797 center center;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-extension-label]
{
    position: absolute;
    left: 0;
    right: 0;
    top: calc(50% - 18px);
    display: block;
    user-select: none;
    color: #fff;
    font-size: 24px;
    text-align: center;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail][data-has-preview] [data-extension-label]
{
    display: none;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-progress]
{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 4px;
    overflow: hidden;
    background: #e5e5e5;
    transition: opacity .5s ease-out 3s;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-progress]:after
{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: var(--progress);
    height: inherit;
    background-color: #077bff;
    transition: background-color .5s ease-out;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-remove-button]
{
    cursor: pointer;
    position: absolute;
    right: -9px;
    top: -9px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    background: #e6e5e5;
    color: #878787;
    border: 1px solid #e6e5e5;
    border-radius: 50%;
    transition: all .2s ease-out;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-remove-button]:hover
{
    background: var(--accent);
    color: #fff;
    border: 1px solid var(--accent);
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-errors]
{
    cursor: pointer;
    position: absolute;
    right: -12px;
    bottom: -10px;
    z-index: 2;
    line-height: 26px;
    width: 26px;
    height: 26px;
    background: #ff0300;
    color: #fff;
    border: 1px solid #ff0300;
    border-radius: 50%;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-errors][aria-label=""], .freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-errors]:not([aria-label])
{
    display: none;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-thumbnail] [data-errors][aria-label]+[data-progress]:after
{
    background: #ff0300;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-filename], .freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-filesize]
{
    display: block;
    margin: 0;
    padding: 0;
    text-align: left;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-filename]
{
    font-size: .875rem;
    color: #5c5c5c;
    word-break: break-all;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview] [data-filesize]
{
    font-size: .8125rem;
    color: #b1b1b1;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview][data-completed] [data-progress]
{
    opacity: 0;
}
.freeform-file-dnd__input [data-preview-zone] [data-file-preview][data-completed] [data-progress]:after
{
    background: #21dd21;
}
.freeform-file-dnd__input[data-theme=dark]
{
    background: #222;
    color: #656666;
}
.freeform-file-dnd__input[data-theme=dark][data-dragging]
{
    background-color: #171717;
}
.freeform-file-dnd__input[data-theme=dark] [data-preview-zone] [data-file-preview] [data-filename], .freeform-file-dnd__input[data-theme=dark] [data-preview-zone] [data-file-preview] [data-placeholder]
{
    color: #bababa;
}
.freeform-file-dnd__input[data-theme=dark] [data-preview-zone] [data-file-preview] [data-remove-button]
{
    color: #bababa;
    border-color: #666;
    background-color: #666;
}
.freeform-file-dnd__input[data-theme=dark] [data-preview-zone] [data-file-preview] [data-filesize]
{
    color: #787878;
}
.freeform-file-dnd__input[data-theme=dark] [data-preview-zone] [data-file-preview] [data-errors]:after
{
    background: #dadada;
    color: #000;
}
[data-field-type=rating]
{
    --ff-rating-color-idle: #ddd;
    --ff-rating-color-hover: #ffd700;
    --ff-rating-color-selected: #f70;
}
[data-field-type=rating] .form-rating-field-wrapper
{
    display: inline-block;
}
[data-field-type=rating] .form-rating-field-wrapper:after
{
    content: "";
    display: table;
    clear: both;
}
[data-field-type=rating] .form-rating-field-wrapper:not(:checked)>input
{
    position: absolute;
    left: -9999px;
    clip: rect(0,0,0,0);
}
[data-field-type=rating] .form-rating-field-wrapper:not(:checked)>label
{
    float: right;
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
    font-size: 200%;
    font-weight: 100;
    line-height: 1.2;
    color: var(--ff-rating-color-idle);
    font-family: sans-serif;
}
[data-field-type=rating] .form-rating-field-wrapper:not(:checked)>label:before
{
    content: "★ ";
    border: none;
}
[data-field-type=rating] .form-rating-field-wrapper:not(:checked)>label:after
{
    content: "";
    display: none;
}
[data-field-type=rating] .form-rating-field-wrapper:not(:checked)>label:hover, [data-field-type=rating] .form-rating-field-wrapper:not(:checked)>label:hover~label
{
    color: var(--ff-rating-color-hover);
}
[data-field-type=rating] .form-rating-field-wrapper>input:checked~label
{
    color: var(--ff-rating-color-selected);
}
[data-field-type=rating] .form-rating-field-wrapper>input:checked+label:hover, [data-field-type=rating] .form-rating-field-wrapper>input:checked+label:hover~label, [data-field-type=rating] .form-rating-field-wrapper>input:checked~label:hover, [data-field-type=rating] .form-rating-field-wrapper>input:checked~label:hover~label, [data-field-type=rating] .form-rating-field-wrapper>label:hover~input:checked~label
{
    color: var(--ff-rating-color-hover);
}
[data-field-type=rating] .form-rating-field-wrapper>label:active
{
    position: relative;
    top: 2px;
    left: 2px;
}
.ff-optical
{
    position: absolute!important;
    width: 0!important;
    height: 0!important;
    overflow: hidden!important;
}
[data-scroll-anchor], [data-rules-json], [data-hidden]
{
    display: none;
}
[data-freeform-controls]
{
    display: flex;
    justify-content: space-between;
}
[data-freeform-controls]>div
{
    display: flex;
    justify-content: space-between;
    align-content: center;
    gap: 5px;
}
form[data-freeform-disabled]
{
    opacity: .5;
    pointer-events: none;
    transition: opacity .3s ease-in-out;
}