.button-text {
    background-color: transparent;
    color: #F85628;
    font-family: "Onest", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 500;
    font-size: 1rem;
    padding: 0;
    display: flex;
    gap: .125rem;
    justify-content: center;
    align-items: center;
    border: none;
    cursor: pointer;
    width: fit-content;
    flex-grow: 1;
    transition-property: color;
    transition-duration: .2s;
    transition-timing-function: ease-in-out;
    text-decoration: underline;

    &:disabled {
        color: var(--gray-800);
        opacity: 0.5;
        pointer-events: none;
    }
}

@media (hover: hover) and (pointer: fine) {
    .button-text:hover {
        color: var(--gray-800);
    }
}

@media (hover: none), (pointer: coarse) {
    .button-text:hover,
    .button-text:focus,
    .button-text:active {
        color: #F85628;
    }
}

.collapsible-content {
    overflow: hidden;
    height: 0;
    transition: height 0.3s ease-in-out;
}

.content_message {
    text-align: center;
    max-width: 900px;
    margin: auto;
    margin-top: 1rem;
    color: var(--main-black);
    font-size: 14px;
}

/* Keep every existing exercise scroll surface visually consistent without
   changing which elements scroll or how their content is sized. */
.exercise-section .exercises-option,
.exercise-section .exercises-option * {
    scrollbar-width: thin !important;
    scrollbar-color: var(--gray-100) transparent !important;
}

.exercise-section .exercises-option::-webkit-scrollbar,
.exercise-section .exercises-option *::-webkit-scrollbar {
    width: .25rem !important;
    height: .25rem !important;
    background-color: transparent !important;
    border-radius: .1875rem !important;
}

.exercise-section .exercises-option::-webkit-scrollbar-track,
.exercise-section .exercises-option *::-webkit-scrollbar-track {
    background-color: transparent !important;
    border-radius: .1875rem !important;
}

.exercise-section .exercises-option::-webkit-scrollbar-thumb,
.exercise-section .exercises-option *::-webkit-scrollbar-thumb {
    background-color: var(--gray-100) !important;
    border-radius: .1875rem !important;
}

.exercise-section .exercises-option .toggle-shadow.has-scroll:not(.flex-box)::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100% !important;
    height: 100%;
    pointer-events: none;
    box-shadow: inset 0rem -5rem 1.6875rem -2rem #fff;
    opacity: 1;
    transition: opacity .4s ease;
}

.exercise-section .exercises-option .toggle-shadow.is-scrolled-end::after {
    opacity: 0;
}

.exercise-section .exercises-option .exercise-example-scroll-shadow {
    position: relative;
    height: 100%;
    min-height: 0;
}

.collapsible-trigger.show {
    .arrow {
        transform: rotateZ(180deg);
    }
}

.radio-item {
    display: flex;
    align-items: center;
    gap: .5rem;
    cursor: pointer;
    width: fit-content;
    position: relative;
    padding: .5rem 0;

    &:hover {
        .custom-radio {
            border: .0625rem solid var(--gray-600);
        }

        .label {
            color: var(--gray-600);
        }
    }

    input {
        position: absolute;
        width: 0;
        height: 0;
        overflow: hidden;

        &:checked+.custom-radio {
            border: .0625rem solid #F85628;

            div {
                border: .25rem solid var(--gray-0);
            }
        }
    }

    .custom-radio {
        width: 1.25rem;
        height: 1.25rem;
        border-radius: 50%;
        border: .0625rem solid var(--gray-200);
        background-color: #F85628;
        overflow: hidden;
        transition: border .1s ease-in-out;

        div {
            width: 100%;
            height: 100%;
            border-radius: 50%;
            border: .25rem solid var(--gray-0);
            transition: border .1s ease-in-out;
        }
    }

    .label {
        color: var(--gray-400);
        font-size: 1.2rem;
        transition: color .1s ease-in-out;
        font-weight: 500;
    }

    &.error {
        input {
            &:checked+.custom-radio {
                border-color: var(--action-red);

                div {
                    border-color: var(--action-red);
                }
            }
        }

        .custom-radio {
            background-color: var(--action-red);
            border-color: var(--action-red);
        }

        .label {
            color: var(--action-red);
        }
    }

    &.success {
        input {
            &:checked+.custom-radio {
                border-color: var(--action-green);

                div {
                    border-color: var(--action-green);
                }
            }
        }

        .custom-radio {
            background-color: var(--action-green);
            border-color: var(--action-green);
        }

        .label {
            color: var(--action-green);
        }
    }
}

.textarea-container {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    width: 100%;
    flex-grow: 1;

    .textarea {
        width: 100%;
        min-height: 17.1875rem;
        border-radius: .75rem;
        border: .0625rem solid var(--gray-25) !important;
        background-color: var(--gray-0);
        font-family: "Onest", sans-serif;
        font-optical-sizing: auto;
        font-style: normal;
        font-weight: 400;
        font-size: 1.075rem;
        color: var(--gray-800);
        resize: vertical;
        padding: .75rem 1rem;

        &::placeholder {
            color: var(--gray-200);
            font-family: "Onest", sans-serif;
            font-optical-sizing: auto;
            font-style: normal;
            font-weight: 400;
            font-size: 1.075rem;
        }

        &:focus-within {
            outline: none;
            border: .0625rem solid var(--orange) !important;
        }
    }

    .hint {
        display: none;
        font-family: "Onest", sans-serif;
        font-optical-sizing: auto;
        font-style: normal;
        font-weight: 400;
        font-size: 1.075rem;
        color: var(--action-red);
    }

    &.error {
        .textarea {
            border-color: var(--action-red) !important;
        }

        .hint {
            display: block;
        }
    }
}

.paper {
    width: 100%;
    border-width: .1875rem .1875rem .375rem .1875rem;
    border-style: solid;
    border-color: #F2F2F2;
    background-color: var(--gray-0);
    padding: 1.5rem;
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
}

.paper img {
    width: auto;
}

.exercises-option .exercise-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.exercises-option .exercise-header .title {
    min-width: 0;
    color: #2A1C14;
    font-family: "Source Serif 4", serif;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2;
}

.exercises-option .exercise-header .title span {
    color: #F85628;
    font-family: "Source Serif 4", serif;
}

.exercises-option .exercise-header__top-bar {
    position: relative;
    width: 100%;
    max-width: 31.875rem;
    min-height: 5.75rem;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
    gap: 1.5rem;
}

@media (min-width: 64.0625rem) {
    .exercises-option .exercise-header__top-bar.is-desktop-sticky {
        position: fixed;
        z-index: 9;
        margin: 0;
        background: var(--bg);
        will-change: transform;
    }
}

.exercise-header__top-bar-placeholder {
    display: none;
    flex: 0 0 auto;
}

.exercise-header__top-bar-placeholder.is-active {
    display: block;
}

.exercise-section .exercises-option.has-transcription:not(.result) [data-exercise-transcription],
.exercise-section .exercises-option.has-transcription:not(.result) [data-exercise-transcription-link] {
    display: none !important;
}

.exercise-section .exercises-option [data-exercise-transcription] {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.exercise-section .exercises-option.result.has-transcription [data-exercise-transcription] {
    display: block !important;
}

.exercise-transcription__collapse {
    width: 100%;
}

.exercise-transcription__collapse > .transcription {
    width: 100%;
}

@media (max-width: 48rem) {
    .exercise-section .exercises-option.result.has-transcription .exercise-transcription-toggle {
        margin-bottom: 1.25rem;
    }
}

.exercise-section .exercises-option.result.has-transcription .additional-play-btn {
    display: none !important;
}

@media (max-width: 64rem) {
    .exercise-section .exercises-option .additional-play-btn {
        display: none !important;
    }
}

.exercises-option:not(.result) .task-wrapper .exercise-bottom-bar.is-result-only {
    display: none;
}

.exercises-option .exercise-header__top-bar .button-prev {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 2.75rem;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border: .0625rem solid #EBEDEF;
    border-radius: 50%;
    background: transparent;
    color: #919292;
}

.exercises-option .exercise-header__top-bar .button-prev:hover {
    color: #C7360D;
}

.exercises-option .exercise-header__top-bar .box {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    min-width: 0;
}

.exercises-option .exercise-header__top-bar .counter {
    color: #000000;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
}

.exercises-option .exercise-header__top-bar .counter .current {
    color: #F85628;
}

.exercises-option .exercise-header__top-bar .button-check,
.exercises-option .exercise-header__top-bar .button-update {
    --btn-height: 2.75rem;
    --btn-width: 10.6875rem;
    --btn-max-width: 10.6875rem;
    width: 10.6875rem;
    flex: 0 0 auto;
}

.exercises-option .exercise-header__top-bar .button-repeat {
    --btn-height: 2.75rem;
    --btn-background: var(--bg);
    --btn-border: .0625rem solid #EBEDEF;
    --btn-color: #F85628;
    display: none;
    width: 100%;
    max-width: 12rem;
    flex: 1 1 auto;
}

.exercises-option .exercise-header__top-bar .button-next {
    --btn-height: 2.75rem;
    display: none;
    width: 100%;
    max-width: 12rem;
    flex: 1 1 auto;
}

@media (hover: hover) and (pointer: fine) {
    .exercises-option .exercise-header__top-bar .button-repeat:hover {
        --btn-border: .0625rem solid #C7360D;
        --btn-color: #C7360D;
    }
}

.exercise-section .exercises-option.result .header .top-bar .counter {
    display: none !important;
}

.exercise-section .exercises-option.result .task-wrapper .exercise-bottom-bar .button-check {
    display: none !important;
}

.exercises-option.result .exercise-header__top-bar .button-check {
    display: none;
}

.exercises-option.result .exercise-header__top-bar .button-repeat,
.exercises-option.result .exercise-header__top-bar .button-next {
    display: flex;
}

.exercises-option .exercise-header__top-bar--nav-only,
.exercises-option .exercise-header__top-bar--actions-empty {
    flex-grow: 0;
}

.exercises-option .exercise-header__top-bar--nav-only .button-next {
    display: flex;
    max-width: 20.5rem;
}

.exercises-option[data-lock] .exercise-header__top-bar--has-next .button-next {
    display: flex;
}

.exercises-option .header .top-bar.exercise-header__top-bar--nav-only .box .button-next {
    display: flex;
}

.exercises-option .header .top-bar.exercise-header__top-bar--next-visible .button-next {
    display: flex;
}

.exercises-option .exercise-header--speaking-card .exercise-header__top-bar {
    flex-grow: 0;
}

.exercises-option .exercise-header--speaking-card .exercise-header__top-bar .box {
    justify-content: flex-end;
}

.exercises-option .exercise-header--speaking-card .exercise-header__top-bar .button-next {
    max-width: 20.5rem;
}

.exercises-option .exercises-explanation {
    background-color: var(--gray-15);
    border-radius: 1.5rem;
    padding: .75rem 1.5rem;
    margin-bottom: 1.5rem;
}

.exercises-option .exercise-header__explanation {
    background-color: var(--gray-15);
    border-radius: 1.5rem;
    padding: .75rem 1.5rem;
    margin-bottom: 1.5rem;
}

.exercises-option .exercises-explanation .explanation {
    color: #505151;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.35;
    font-style: italic;
}

.exercises-option .exercises-explanation .explanation:not(:last-child) {
    margin-bottom: .5rem;
}

.exercises-option .exercises-explanation .statistics {
    color: #F85628;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.35;
}

.exercise-section .exercises-option .task-wrapper .answer .scroll-container .questions .question-wrapper .explanation :is(p, li, pre, blockquote),
.exercise-section .exercises-option .task-wrapper .answer .scroll-container .question-wrapper .explanation :is(p, li, pre, blockquote),
.exercise-section .exercises-option .task-wrapper .answer .question-wrapper .explanation :is(p, li, pre, blockquote),
.exercise-section .exercises-option .explanation .collapsible-content :is(p, li, pre, blockquote) {
    color: var(--main-black) !important;
    font-size: 1.2rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    margin-top: .5rem !important;
    margin-bottom: .5rem !important;
}

.exercise-section .exercises-option .task-wrapper .answer .scroll-container .questions .question-wrapper .explanation pre,
.exercise-section .exercises-option .task-wrapper .answer .scroll-container .question-wrapper .explanation pre,
.exercise-section .exercises-option .task-wrapper .answer .question-wrapper .explanation pre,
.exercise-section .exercises-option .explanation .collapsible-content pre {
    font-family: var(--font-onest);
    white-space: pre-wrap;
    word-break: normal;
}

.exercise-section .exercises-option .extra-explanation-content.imported-html :is(h2, h3, h4, h5, h6) {
    color: var(--main-black);
    font-family: var(--font-onest);
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 1rem 0 .5rem;
}

.exercise-section .exercises-option .extra-explanation-content.imported-html > :first-child {
    margin-top: 0;
}

.exercise-section .exercises-option .text-block.imported-html {
    color: var(--main-black);
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.55;
}

.exercise-section .exercises-option .text-block.imported-html > :first-child {
    margin-top: 0;
}

.exercise-section .exercises-option .text-block.imported-html > :last-child {
    margin-bottom: 0;
}

.exercise-section .exercises-option .text-block.imported-html p {
    margin: .5rem 0 0;
}

.exercise-section .exercises-option .text-block.imported-html h2,
.exercise-section .exercises-option .text-block.imported-html h3,
.exercise-section .exercises-option .text-block.imported-html h4,
.exercise-section .exercises-option .text-block.imported-html h5,
.exercise-section .exercises-option .text-block.imported-html h6 {
    color: var(--main-black);
    font-family: "Onest", sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 .5rem;
}

.exercise-section .exercises-option .text-block.imported-html > p + h4 {
    margin-top: 1.5rem;
}

.exercise-section .exercises-option .text-block.imported-html :where(ul, ol) {
    margin: .75rem 0;
    padding-left: 1.25rem;
}

.exercise-section .exercises-option .text-block.imported-html :where(li) {
    margin: .5rem 0;
}

.exercise-section .exercises-option .text-block.imported-html table {
    width: 100%;
    border: .0625rem solid var(--gray-100);
    border-collapse: separate;
    border-radius: 10px;
    border-spacing: 0;
    overflow: hidden;
    margin: 0;
    color: var(--main-black);
    font-size: 1.2rem;
    line-height: 1.45;
}

.exercise-section .exercises-option .text-block.imported-html th,
.exercise-section .exercises-option .text-block.imported-html td {
    border: 0;
    border-right: .0625rem solid var(--gray-100);
    border-bottom: .0625rem solid var(--gray-100);
    padding: .5rem .625rem;
    text-align: left;
    vertical-align: middle;
}

.exercise-section .exercises-option .text-block.imported-html tr > :last-child {
    border-right: 0;
}

.exercise-section .exercises-option .text-block.imported-html table > :last-child > tr:last-child > :where(th, td) {
    border-bottom: 0;
}

.exercise-section .exercises-option .text-block.imported-html th {
    background-color: var(--gray-15);
    font-weight: 700;
}

.exercise-section .exercises-option .text-block.imported-html td > :first-child,
.exercise-section .exercises-option .text-block.imported-html th > :first-child {
    margin-top: 0;
}

.exercise-section .exercises-option .text-block.imported-html td > :last-child,
.exercise-section .exercises-option .text-block.imported-html th > :last-child {
    margin-bottom: 0;
}

.exercise-section .exercises-option .text-block.imported-html td :where(ul, ol),
.exercise-section .exercises-option .text-block.imported-html th :where(ul, ol) {
    margin: 0;
    padding-left: 1rem;
}

.exercise-section .exercises-option .text-block.imported-html td :where(li),
.exercise-section .exercises-option .text-block.imported-html th :where(li) {
    margin: .1875rem 0;
}

.exercise-section .exercises-option .text-block.imported-html .flex-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.exercise-section .exercises-option .text-block.imported-html .flex-list > li {
    border: .0625rem solid var(--gray-25);
    border-radius: .75rem;
    background-color: var(--gray-0);
    padding: 1rem 1.125rem;
    margin: 0;
}

.exercise-section .exercises-option .text-block.imported-html .flex-list > li > :first-child {
    margin-top: 0;
}

.exercise-section .exercises-option .text-block.imported-html .flex-list > li > :last-child {
    margin-bottom: 0;
}

@media (max-width: 64rem) {
    .exercises-option .exercise-header {
        flex-direction: column;
        align-items: flex-start;
        gap: .75rem;
    }

    .exercises-option .exercise-header .title {
        font-size: 1.15rem;
    }

    .exercises-option .exercise-header__top-bar {
        max-width: 100%;
    }
}

@media (max-width: 48rem) {
    .exercises-option .exercise-header {
        margin-bottom: 1rem;
    }

    .exercises-option .exercise-header .title {
        font-size: 1.7rem;
    }

    .exercises-option .exercise-header__top-bar {
        min-height: auto;
        padding: 1rem;
        gap: .75rem;
    }

    .exercises-option .exercise-header__top-bar .box {
        gap: .75rem;
    }

    .exercises-option .exercise-header__top-bar .counter {
        font-size: 1.2rem;
    }

    .exercises-option .exercise-header__top-bar .button-check,
    .exercises-option .exercise-header__top-bar .button-update,
    .exercises-option .exercise-header__top-bar .button-repeat,
    .exercises-option .exercise-header__top-bar .button-next {
        display: none !important;
    }

    .exercises-option .exercise-header--speaking-card {
        flex-direction: column-reverse;
        align-items: flex-start;
        margin-bottom: 2rem;
    }

    .exercises-option .exercise-header--speaking-card .title {
        font-family: "Onest", sans-serif;
        font-size: 1.7rem;
        font-weight: 600;
    }

    .exercises-option .exercise-header--speaking-card .exercise-header__top-bar {
        justify-content: flex-start;
        width: auto;
        min-height: auto;
        border: none;
        padding: 0;
        gap: 1rem;
    }

    .exercises-option .exercise-header--speaking-card .exercise-header__top-bar .box {
        display: none;
    }
}

@media (max-width: 28rem) {
    .exercises-option .exercise-header__top-bar {
        align-items: center;
        flex-wrap: wrap;
        border: 0;
        border-radius: 0;
        padding: 0;
        background: transparent;
    }

    .exercises-option .exercise-header__top-bar .box {
        width: auto;
        flex: 1 1 0;
        flex-wrap: nowrap;
    }

    .exercises-option .exercise-header__top-bar .counter {
        width: auto;
    }

    .exercises-option .exercise-header__top-bar .exercise-incomplete-message {
        position: static;
        order: 3;
        flex: 0 0 100%;
        width: 100%;
        margin: 0;
    }
}

.exercises-option .task-wrapper .exercise-bottom-bar {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    display: none;
}

.exercises-option .task-wrapper .exercise-bottom-bar .buttons {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: .75rem;
    max-width: 100%;
    margin: 0 auto;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-prev,
.exercises-option .task-wrapper .exercise-bottom-bar .button-repeat,
.exercises-option .task-wrapper .exercise-bottom-bar .button-next,
.exercises-option .task-wrapper .exercise-bottom-bar .button-update,
.exercises-option .task-wrapper .exercise-bottom-bar .button-to-text,
.exercises-option .task-wrapper .exercise-bottom-bar .button-check {
    display: none;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-prev {
    color: #919292;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-prev:hover {
    color: #C7360D;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-prev,
.exercises-option .task-wrapper .exercise-bottom-bar .button-repeat {
    flex: 0 0 2.75rem;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border-radius: 50%;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-outline {
    appearance: none;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-width: 0;
    min-height: 2.75rem;
    margin: 0;
    padding: 0;
    border: .0625rem solid var(--gray-25);
    border-radius: 6.25rem;
    background: var(--gray-0);
    color: var(--orange);
    font: inherit;
    cursor: pointer;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-outline svg {
    display: block;
    flex: 0 0 auto;
}

.exercises-option .task-wrapper .exercise-bottom-bar .button-check,
.exercises-option .task-wrapper .exercise-bottom-bar .button-next,
.exercises-option .task-wrapper .exercise-bottom-bar .button-update,
.exercises-option .task-wrapper .exercise-bottom-bar .button-to-text {
    --btn-height: 2.75rem;
    --btn-width: 100%;
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
}

.exercises-option .task-media-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin-bottom: 1rem;
    border-radius: 1rem;
    overflow: hidden;
    align-self: center;
}

.exercises-option .task-media-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.exercises-option .task-media-image.has-ai-note,
.exercises-option .media-grid.has-ai-note,
.extra-exercise-template .extra-exercise-media-grid.has-ai-note {
    margin-bottom: 0 !important;
}

.exercise-image-ai-note {
    margin: .375rem 0 1rem;
    color: var(--gray-800);
    font-family: var(--font-onest);
    font-size: .75rem;
    font-weight: 400;
    line-height: 1.35;
    text-align: center;
}

.exercises-option .image-wrapper + .exercise-image-ai-note {
    margin-top: -1.125rem;
}

.exercises-option .speaking-task-image + .exercise-image-ai-note {
    margin-top: .375rem;
}

.exercises-option .button-report {
    display: none;
    text-decoration: none;
    margin: 0 auto;
}

.exercises-option .correct-answers {
    color: #000000;
    font-size: 1.125rem;
    font-weight: 600;
}

.exercises-option:not(.result) .correct-answers {
    display: none;
}

.exercises-option .correct-answers.red .current {
    color: var(--action-red);
}

.exercises-option .correct-answers.green .current {
    color: var(--action-green);
}

.exercises-option .correct-answers p {
    background-color: var(--gray-15);
    padding: .5rem;
    text-align: center;
    border-radius: 1rem;
}

.exercises-option .dialog-report {
    display: none;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background-color: #00000066;
}

.exercises-option .dialog-report .content {
    max-width: 22.5rem;
    width: 100%;
    padding: 2rem;
    background-color: #FFFFFF;
    border-radius: 1rem;
    position: relative;
}

.exercises-option .dialog-report .button-close {
    position: absolute;
    right: 1rem;
    top: 1rem;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 2.5rem;
    cursor: pointer;
    border: none;
}

.exercises-option .dialog-report form .title,
.exercises-option .dialog-report .message-success .title {
    color: #191919;
    font-size: 1.125rem;
    font-weight: 600;
    padding-right: 1.75rem;
}

.exercises-option .dialog-report form .title {
    margin-bottom: 1.5rem;
}

.exercises-option .dialog-report .textarea-container {
    margin-bottom: 1.5rem;
}

.exercises-option .dialog-report .textarea-container textarea {
    min-height: 8rem;
    resize: none;
}

.exercises-option .dialog-report .message-success {
    display: none;
}

.exercises-option .dialog-report .message-success .title {
    margin-bottom: .5rem;
    padding-right: 2.25rem;
}

.exercises-option .dialog-report .message-success .message {
    color: #191919;
    font-size: 1.2rem;
    font-weight: 400;
}

.exercises-option .dialog-report.success form {
    display: none;
}

.exercises-option .dialog-report.success .message-success {
    display: block;
}

.result .button-report {
    display: flex;
}

.result .dialog-report.show {
    display: flex;
}

@media (max-width: 64rem) {
    .exercises-option .task-wrapper .exercise-bottom-bar.has-visible-next {
        display: flex;
    }

    .exercises-option .task-wrapper .exercise-bottom-bar {
        position: static;
        border-top: .0625rem solid var(--gray-25);
        padding-top: 1rem;
        padding-bottom: 0;
        background-color: #fff;
        height: auto; 
        width: 100%;
        align-items: end;
    }

    .exercises-option .task-wrapper .exercise-bottom-bar.has-visible-next .button-next,
    .exercises-option .task-wrapper .exercise-bottom-bar.has-check .button-update {
        display: flex;
    }

    .exercises-option .task-wrapper .exercise-bottom-bar .buttons {
        position: sticky;
        bottom: 1rem;
    }
}

@media (max-width: 48rem) {
    .exercises-option .task-wrapper .exercise-bottom-bar {
        display: flex;
    }

    .exercises-option .task-wrapper .exercise-bottom-bar.has-check .button-check,
    .exercises-option .task-wrapper .exercise-bottom-bar.has-to-text .button-to-text {
        display: flex;
    }

    .exercises-option .task-wrapper .exercise-bottom-bar.has-nav-actions .button-prev,
    .exercises-option .task-wrapper .exercise-bottom-bar.has-nav-actions .button-next,
    .exercises-option .task-wrapper .exercise-bottom-bar.has-nav-actions .button-update,
    .exercises-option .task-wrapper .exercise-bottom-bar.has-single-visible-action .button-next,
    .exercises-option .task-wrapper .exercise-bottom-bar.has-single-visible-action .button-update {
        display: flex;
    }

    .result .task-wrapper .exercise-bottom-bar .button-check,
    .result .task-wrapper .exercise-bottom-bar .button-to-text {
        display: none;
    }

    .result .task-wrapper .exercise-bottom-bar.has-prev .button-prev,
    .result .task-wrapper .exercise-bottom-bar.has-repeat .button-repeat,
    .result .task-wrapper .exercise-bottom-bar.has-next .button-next,
    .result .task-wrapper .exercise-bottom-bar.has-next .button-update {
        display: flex;
    }

    /* .exercise-bottom-bar.has-single-visible-action,
    .exercise-bottom-bar:has(> .buttons > .button-fill:only-child) {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    } */

    .exercise-bottom-bar.has-single-visible-action > .buttons,
    .exercise-bottom-bar:has(> .buttons > .button-fill:only-child) > .buttons {
        width: 100% !important;
        max-width: none !important;
    }

    .exercise-bottom-bar.has-single-visible-action > .buttons > .button-fill,
    .exercise-bottom-bar > .buttons > .button-fill:only-child {
        --btn-height: 2.75rem;
        --btn-width: 100%;
        width: 100% !important;
        max-width: 100% !important;
    }

    .exercises-option .dialog-report {
        align-items: end;
    }

    .exercises-option .dialog-report .content {
        padding: 1.5rem 1rem;
        max-width: 100%;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
}

.exercises-option .exercise-ai-results[hidden] {
    display: none !important;
}

.exercises-option.result[data-has-ai-answer="1"] .exercise-header__explanation {
    display: none !important;
}

.exercises-option .exercise-ai-results {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.exercises-option .writing-example-card + .exercise-ai-results,
.exercises-option .speaking-example-card + .exercise-ai-results,
.exercises-option .option-21-about-editor + .exercise-ai-results {
    margin-top: 1.5rem;
}

.exercises-option .exercise-ai-results > .result-answer {
    margin-top: 0;
}

@media (max-width: 64rem) {
    .exercises-option .exercise-ai-results {
        gap: 1rem;
    }

    .exercises-option .writing-example-card + .exercise-ai-results,
    .exercises-option .speaking-example-card + .exercise-ai-results,
    .exercises-option .option-21-about-editor + .exercise-ai-results {
        margin-top: 1rem;
    }
}
