/* =========================================================
 * CLINICAL NOTE CLEANER
 * ListenMD Clinical AI Tool
 * Final Consistent Styles
 * ========================================================= */


/* =========================================================
 * PAGE / THEME OVERRIDES
 * ========================================================= */

body:has(.clinical-note-cleaner) main {
    padding-top: 0 !important;
}

body:has(.clinical-note-cleaner) .block-page-title-block,
body:has(.clinical-note-cleaner) .block-system-breadcrumb-block,
body:has(.clinical-note-cleaner) .breadcrumb,
body:has(.clinical-note-cleaner) .region-breadcrumb,
body:has(.clinical-note-cleaner) .page-title {
    display: none !important;
}

body:has(.clinical-note-cleaner)
section > div[class*="container"]:not([class*="space-"]) {
    padding-top: 0;
    padding-bottom: 0;
}


/* =========================================================
 * MAIN TOOL CONTAINER
 * ========================================================= */

.clinical-note-cleaner {
    position: relative;
    box-sizing: border-box;

    width: min(100%, 1180px);

    margin-inline: auto;

    padding: 1rem 1rem 4rem;

    color: #263746;
}

.clinical-note-cleaner *,
.clinical-note-cleaner *::before,
.clinical-note-cleaner *::after {
    box-sizing: border-box;
}


/* =========================================================
 * HERO
 * ========================================================= */

.clinical-note-cleaner__intro {
    position: relative;

    box-sizing: border-box;

    width: 100%;

    margin: 0 auto 1.5rem;

    padding: 2.4rem 2rem;

    overflow: hidden;

    border: 1px solid #dce9f4;
    border-radius: 24px;

    background:
        radial-gradient(
            circle at top right,
            rgb(30 159 230 / 14%),
            transparent 36%
        ),
        linear-gradient(
            135deg,
            #f8fcff 0%,
            #ffffff 55%,
            #f3f9fd 100%
        );

    text-align: center;

    box-shadow:
        0 20px 50px rgb(19 58 92 / 7%),
        0 4px 12px rgb(19 58 92 / 4%);
}


/* Hero brand accent. */

.clinical-note-cleaner__intro::before {
    position: absolute;

    top: 0;
    left: 50%;

    width: 140px;
    height: 4px;

    border-radius: 0 0 4px 4px;

    background:
        linear-gradient(
            90deg,
            #173f6b,
            #1e9fe6,
            #d5363a
        );

    content: "";

    transform: translateX(-50%);
}


/* =========================================================
 * HERO BADGE + ICON
 * ========================================================= */

.clinical-note-cleaner__tool-badge-area {
    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 1rem;

    margin-bottom: 1rem;

    text-align: center;
}


.clinical-note-cleaner__tool-badge {
    display: inline-flex;

    align-items: center;

    gap: 0.5rem;

    padding: 0.5rem 0.9rem;

    border: 1px solid #bfdaed;
    border-radius: 999px;

    background: #eef8fe;

    color: #145f91;

    font-size: 0.76rem;
    font-weight: 800;

    line-height: 1;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}


.clinical-note-cleaner__tool-badge-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #1e9fe6;

    box-shadow:
        0 0 0 4px rgb(30 159 230 / 12%);
}


.clinical-note-cleaner__tool-icon {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    border: 1px solid #c6e1f2;
    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            #eef9ff,
            #e1f3fc
        );

    color: #147db5;

    font-size: 2rem;
    font-weight: 700;

    line-height: 1;

    box-shadow:
        0 8px 22px rgb(20 125 181 / 12%);
}


/* =========================================================
 * HERO TITLE
 * Supports both existing H2 and updated H1 markup
 * ========================================================= */

.clinical-note-cleaner__intro h1,
.clinical-note-cleaner__intro h2 {
    max-width: 760px;

    margin: 0 auto 1rem;

    color: #173a5e;

    font-size: clamp(2.25rem, 5vw, 3.6rem);
    font-weight: 800;

    line-height: 1.08;

    letter-spacing: -0.035em;
}


.clinical-note-cleaner__intro h1 span,
.clinical-note-cleaner__intro h2 span {
    color: #1685c0;
}


/* =========================================================
 * HERO DESCRIPTION
 * ========================================================= */

.clinical-note-cleaner__intro > p {
    max-width: 690px;

    margin: 0 auto;

    color: #607387;

    font-size: clamp(1rem, 2vw, 1.1rem);

    line-height: 1.75;
}


/* =========================================================
 * INPUT CARD
 *
 * Privacy reminder + textarea + message + actions
 * visually form one white card.
 * ========================================================= */


/* ---------------------------------------------------------
 * PRIVACY REMINDER WRAPPER
 * --------------------------------------------------------- */

.clinical-note-cleaner >
.clinical-note-cleaner__privacy-reminder {
    position: relative;

    display: flex;

    align-items: flex-start;

    gap: 0.7rem;

    box-sizing: border-box;

    margin: 0 !important;

    padding:
        1.5rem
        clamp(1.4rem, 3vw, 2rem)
        0;

    border-top: 1px solid #d7e5ef;
    border-right: 1px solid #d7e5ef;
    border-left: 1px solid #d7e5ef;

    border-radius: 20px 20px 0 0;

    background: #fff;

    box-shadow:
        0 20px 55px rgb(20 56 88 / 9%),
        0 4px 12px rgb(20 56 88 / 4%);
}


/* Main card brand accent. */

.clinical-note-cleaner >
.clinical-note-cleaner__privacy-reminder::before {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 3px;

    background:
        linear-gradient(
            90deg,
            #173f6b,
            #1e9fe6,
            #d5363a
        );

    content: "";
}


/*
 * Yellow privacy box background.
 */

.clinical-note-cleaner >
.clinical-note-cleaner__privacy-reminder::after {
    position: absolute;

    top: 1.5rem;
    right: clamp(1.4rem, 3vw, 2rem);
    bottom: 0;
    left: clamp(1.4rem, 3vw, 2rem);

    z-index: 0;

    border: 1px solid #f1c97a;
    border-radius: 12px;

    background: #fff9e9;

    content: "";
}


.clinical-note-cleaner__privacy-reminder > * {
    position: relative;

    z-index: 1;
}


/* Privacy icon. */

.clinical-note-cleaner__privacy-icon {
    display: inline-flex;

    flex: 0 0 24px;

    align-items: center;
    justify-content: center;

    width: 24px;
    height: 24px;

    margin:
        0.9rem
        0
        0.9rem
        1rem;

    border: 0;
    border-radius: 0;

    background: transparent;

    color: #8b6300;

    font-size: 1rem;
    font-weight: 900;

    line-height: 1;
}


/* Privacy content. */

.clinical-note-cleaner__privacy-reminder > div:last-child {
    flex: 1;

    min-width: 0;

    padding:
        0.85rem
        1rem
        0.85rem
        0;
}


.clinical-note-cleaner__privacy-reminder strong {
    display: block;

    margin: 0 0 0.2rem;

    color: #7b3f00;

    font-size: 0.9rem;
    font-weight: 800;
}


.clinical-note-cleaner__privacy-reminder p {
    margin: 0;

    color: #684f12;

    font-size: 0.9rem;

    line-height: 1.55;
}


/* =========================================================
 * TEXTAREA AREA
 * ========================================================= */

.clinical-note-cleaner > .form-item-note {
    position: relative;

    box-sizing: border-box;

    margin: 0 !important;

    padding:
        1.25rem
        clamp(1.4rem, 3vw, 2rem)
        0;

    overflow: visible;

    border-right: 1px solid #d7e5ef;
    border-left: 1px solid #d7e5ef;

    background: #fff;
}


.clinical-note-cleaner .form-item-note label {
    display: block;

    margin-bottom: 0.35rem;

    color: #173a5e;

    font-size: 1.2rem;
    font-weight: 800;
}


.clinical-note-cleaner textarea {
    display: block;

    box-sizing: border-box;

    width: 100%;
    min-height: 240px;

    margin: 0.8rem 0 0 !important;

    padding: 1.25rem;

    border: 1px solid #c8d7e2;
    border-radius: 14px;

    background: #fbfdff;

    color: #263746;

    font: inherit;
    font-size: 1rem;

    line-height: 1.7;

    resize: vertical;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}


.clinical-note-cleaner textarea:hover {
    border-color: #9fbcd1;
}


.clinical-note-cleaner textarea:focus {
    border-color: #1976ad;

    outline: none;

    background: #fff;

    box-shadow:
        0 0 0 4px rgb(25 118 173 / 12%);
}


.clinical-note-cleaner .description {
    margin-top: 0.65rem;

    color: #6b7d8d;

    font-size: 0.87rem;

    line-height: 1.55;
}


/* =========================================================
 * LOCAL VALIDATION MESSAGE
 * ========================================================= */

.clinical-note-cleaner >
.clinical-note-cleaner__message {
    position: relative;

    box-sizing: border-box;

    width: 100%;
    min-width: 0;

    margin: 0 !important;

    padding:
        1rem
        clamp(1.4rem, 3vw, 2rem)
        0;

    border-right: 1px solid #d7e5ef;
    border-left: 1px solid #d7e5ef;

    background: #fff;
}


.clinical-note-cleaner >
.clinical-note-cleaner__message:empty {
    display: none;
}


.clinical-note-cleaner__message
.clinical-note-cleaner__error {
    position: relative;

    box-sizing: border-box;

    width: 100%;

    margin: 0 !important;

    padding:
        0.9rem
        1rem
        0.9rem
        3.25rem !important;

    border: 1px solid #efb1ad !important;
    border-left: 4px solid #c9362b !important;

    border-radius: 10px !important;

    background: #fff5f4 !important;

    color: #8f241d !important;

    box-shadow: none !important;

    font-size: 0.94rem;
    font-weight: 500;

    line-height: 1.5;
}


.clinical-note-cleaner__message
.clinical-note-cleaner__error::before {
    position: absolute;

    top: 50%;
    left: 1rem;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 1.4rem;
    height: 1.4rem;

    border: 2px solid #c9362b;
    border-radius: 50%;

    color: #c9362b;

    content: "!";

    font-size: 0.82rem;
    font-weight: 800;

    line-height: 1;

    transform: translateY(-50%);
}


.clinical-note-cleaner__message
.clinical-note-cleaner__error > * {
    margin: 0 !important;
}


/* =========================================================
 * FORM ACTIONS
 * ========================================================= */

.clinical-note-cleaner > .form-actions {
    display: grid !important;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: 0.75rem;

    box-sizing: border-box;

    margin: 0 0 1.5rem !important;

    padding:
        1.25rem
        clamp(1.4rem, 3vw, 2rem)
        2rem;

    border: 1px solid #d7e5ef;
    border-top: 0;

    border-radius: 0 0 20px 20px;

    background: #fff;

    box-shadow:
        0 20px 55px rgb(20 56 88 / 9%),
        0 4px 12px rgb(20 56 88 / 4%);
}


.clinical-note-cleaner >
.form-actions .button {
    min-height: 50px;

    margin: 0 !important;

    border-radius: 10px;

    font-size: 0.96rem;
    font-weight: 800;

    cursor: pointer;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease;
}


/* Primary button. */

.clinical-note-cleaner
.form-actions
.button--primary {
    color: #fff !important;

    -webkit-text-fill-color: #fff !important;

    border: 0 !important;

    background:
        linear-gradient(
            135deg,
            #123f6d 0%,
            #147db5 100%
        ) !important;

    box-shadow:
        0 12px 28px rgb(20 125 181 / 28%);
}


.clinical-note-cleaner
.form-actions
.button--primary:hover,
.clinical-note-cleaner
.form-actions
.button--primary:focus {
    color: #fff !important;

    -webkit-text-fill-color: #fff !important;

    background:
        linear-gradient(
            90deg,
            #0b2f59 0%,
            #157fbe 100%
        ) !important;

    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgb(21 127 190 / 30%);
}


/* Clear button. */

.clinical-note-cleaner
.form-actions
.button:not(.button--primary) {
    padding-inline: 1.5rem;

    border: 1px solid #c8d7e2;

    background: #f7fafc;

    color: #334e68;
}


.clinical-note-cleaner
.form-actions
.button:not(.button--primary):hover {
    border-color: #9fbcd1;

    background: #edf5fa;
}


/* =========================================================
 * AJAX LOADER
 * ========================================================= */

.clinical-note-cleaner .ajax-progress {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 0.65rem;

    grid-column: 1 / -1;

    margin: 0;

    color: #52697d;

    font-size: 0.9rem;
    font-weight: 600;
}


.clinical-note-cleaner
.ajax-progress-throbber
.throbber {
    display: inline-block;

    box-sizing: border-box;

    width: 20px;
    height: 20px;

    padding: 0;

    border:
        3px solid
        rgb(20 125 181 / 20%);

    border-top-color: #147db5;

    border-radius: 50%;

    background: transparent;

    animation:
        clinical-note-cleaner-spin
        0.7s linear infinite;
}


@keyframes clinical-note-cleaner-spin {
    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
 * RESULTS
 * ========================================================= */

.clinical-note-cleaner__result {
    margin-top: 1.5rem;

    scroll-margin-top: 120px;
}


.clinical-note-cleaner__result:empty {
    display: none;
}


.clinical-note-cleaner__result-content {
    padding:
        clamp(
            1.4rem,
            3vw,
            2rem
        );

    overflow: hidden;

    border: 1px solid #d9e2ec;
    border-radius: 20px;

    background: #fff;

    outline: none;

    box-shadow:
        0 14px 40px rgb(20 45 70 / 8%);
}


.clinical-note-cleaner__result-content > h2 {
    position: relative;

    margin: -2rem -2rem 1.5rem;

    padding: 1.5rem 2rem;

    border-bottom: 1px solid #e3eaf0;

    background: #f7fafc;

    color: #173a5e;

    font-size:
        clamp(
            1.5rem,
            3vw,
            2rem
        );
}


.clinical-note-cleaner__result-content > h2::before {
    display: inline-block;

    width: 9px;
    height: 9px;

    margin-right: 0.6rem;

    border-radius: 50%;

    background: #32a266;

    box-shadow:
        0 0 0 5px rgb(50 162 102 / 13%);

    content: "";

    vertical-align: middle;
}


/* =========================================================
 * COMPARISON PANELS
 * ========================================================= */

.clinical-note-cleaner__comparison {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap: 1rem;
}


.clinical-note-cleaner__panel {
    min-width: 0;

    padding: 1.4rem;

    border: 1px solid #dce5ed;
    border-radius: 14px;

    background: #f8fafc;
}


.clinical-note-cleaner__panel--cleaned {
    border-color: #b8d6f1;

    background: #f2f8fd;
}


.clinical-note-cleaner__panel h3 {
    margin: 0 0 0.85rem;

    color: #243b53;

    font-size: 1.05rem;
    font-weight: 800;
}


.clinical-note-cleaner__note {
    min-height: 180px;

    color: #263746;

    font-size: 1rem;

    line-height: 1.75;

    overflow-wrap: anywhere;

    white-space: normal;
}


/* Copy cleaned note button. */

.clinical-note-cleaner__panel .button {
    min-height: 42px;

    margin-top: 1.25rem;

    padding: 0.65rem 1rem;

    border: 1px solid #147db5;
    border-radius: 9px;

    background: #fff;

    color: #126895;

    font-weight: 700;

    cursor: pointer;
}


.clinical-note-cleaner__panel .button:hover {
    background: #147db5;

    color: #fff;
}


/* =========================================================
 * WHAT CHANGED / REVIEW CARDS
 * ========================================================= */

.clinical-note-cleaner__summary-card {
    position: relative;

    margin-top: 1.25rem;

    padding: 1.4rem;

    overflow: hidden;

    border: 1px solid #cfe2ef;
    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            #f7fcff 0%,
            #eef8fd 100%
        );

    box-shadow:
        0 8px 24px rgb(20 56 88 / 6%);
}


.clinical-note-cleaner__summary-card::before {
    position: absolute;

    top: 0;
    left: 0;

    width: 5px;
    height: 100%;

    background: #1687c4;

    content: "";
}


.clinical-note-cleaner__summary-card--review {
    border-color: #efd99e;

    background:
        linear-gradient(
            135deg,
            #fffdf6 0%,
            #fff8e8 100%
        );
}


.clinical-note-cleaner__summary-card--review::before {
    background: #e49a12;
}


/* Summary header. */

.clinical-note-cleaner__summary-header {
    display: flex;

    align-items: flex-start;

    gap: 0.9rem;

    margin-bottom: 1.1rem;
}


.clinical-note-cleaner__summary-icon {
    display: inline-flex;

    flex: 0 0 38px;

    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    border-radius: 11px;

    background: #dff2fc;

    color: #1175a9;

    font-size: 1.1rem;
    font-weight: 900;

    box-shadow:
        inset 0 0 0 1px rgb(17 117 169 / 12%);
}


.clinical-note-cleaner__summary-card--review
.clinical-note-cleaner__summary-icon {
    background: #fff0c9;

    color: #a86600;

    box-shadow:
        inset 0 0 0 1px rgb(168 102 0 / 12%);
}


.clinical-note-cleaner__summary-header h3 {
    margin: 0 0 0.2rem;

    color: #173a5e;

    font-size: 1.08rem;
    font-weight: 800;

    line-height: 1.3;
}


.clinical-note-cleaner__summary-header p {
    margin: 0;

    color: #687d90;

    font-size: 0.88rem;

    line-height: 1.5;
}


/* =========================================================
 * SUMMARY LIST
 * ========================================================= */

.clinical-note-cleaner__summary-list {
    display: grid;

    gap: 0.65rem;

    margin: 0 !important;

    padding: 0 !important;

    list-style: none !important;
}


.clinical-note-cleaner__summary-card
.clinical-note-cleaner__summary-list > li {
    position: relative;

    display: flex;

    box-sizing: border-box;

    width: 100%;
    min-height: 48px;

    align-items: center;

    margin: 0 !important;

    padding:
        0.75rem
        1rem
        0.75rem
        3.25rem !important;

    border: 1px solid #d8e9f3;
    border-radius: 11px;

    background:
        rgb(255 255 255 / 88%);

    color: #334e68;

    font-size: 0.94rem;

    line-height: 1.5;

    box-shadow:
        0 3px 10px rgb(20 56 88 / 4%);

    list-style: none;
}


.clinical-note-cleaner__summary-card
.clinical-note-cleaner__summary-list > li::before {
    position: absolute;

    top: 50%;
    left: 1rem;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 22px;
    height: 22px;

    transform:
        translateY(-50%);

    border-radius: 50%;

    background: #dff2fc;

    color: #1175a9;

    content: "✓";

    font-size: 0.75rem;
    font-weight: 900;

    line-height: 1;
}


.clinical-note-cleaner__summary-card--review
.clinical-note-cleaner__summary-list > li {
    border-color: #f0dfb5;
}


.clinical-note-cleaner__summary-card--review
.clinical-note-cleaner__summary-list > li::before {
    background: #fff0c9;

    color: #a86600;

    content: "!";
}


.clinical-note-cleaner__summary-list > li::marker {
    content: "";
}


/* =========================================================
 * IMPORTANT NOTICE
 * Matches Medical Abbreviation Expander
 * ========================================================= */

.clinical-note-cleaner__disclaimer {
    display: flex;

    align-items: flex-start;

    gap: 0.75rem;

    margin-top: 1.5rem;

    padding: 0.9rem 1.1rem;

    border: 1px solid #efcf8b;
    border-left: 4px solid #df8d00;

    border-radius: 12px;

    background: #fffaf0;

    color: #5d4500;

    font-size: 0.9rem;

    line-height: 1.6;

    box-shadow: none;
}


.clinical-note-cleaner__disclaimer-icon {
    display: inline-flex;

    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: auto;
    height: auto;

    margin-top: 0.05rem;

    border: 0;
    border-radius: 0;

    background: transparent;

    color: #805600;

    font-size: 1.35rem;
    font-weight: 900;

    line-height: 1.2;
}


.clinical-note-cleaner__disclaimer-content {
    min-width: 0;
}


.clinical-note-cleaner__disclaimer strong {
    display: block;

    margin: 0 0 0.25rem;

    color: #7a3e00;

    font-size: 0.9rem;
    font-weight: 800;
}


.clinical-note-cleaner__disclaimer p {
    margin: 0;

    color: #5d4500;
}


.clinical-note-cleaner__disclaimer-emphasis {
    margin-top: 0.4rem !important;

    color: #a11f1f !important;

    font-weight: 800;
}


/* =========================================================
 * MOBILE
 * ========================================================= */

@media (max-width: 767px) {

    /* Main wrapper. */

    .clinical-note-cleaner {
        padding:
            1.25rem
            0.75rem
            3rem;
    }


    /* Hero. */

    .clinical-note-cleaner__intro {
        margin-bottom: 1.5rem;

        padding:
            2rem
            1.1rem;

        border-radius: 18px;
    }


    .clinical-note-cleaner__intro h1,
    .clinical-note-cleaner__intro h2 {
        font-size:
            clamp(
                2rem,
                10vw,
                2.7rem
            );
    }


    .clinical-note-cleaner__intro > p {
        font-size: 0.95rem;
    }


    .clinical-note-cleaner__tool-badge-area {
        gap: 0.9rem;

        margin-bottom: 1rem;
    }


    .clinical-note-cleaner__tool-badge {
        padding:
            0.45rem
            0.75rem;

        font-size: 0.7rem;
    }


    .clinical-note-cleaner__tool-icon {
        width: 48px;
        height: 48px;

        font-size: 1.8rem;
    }


    /* Privacy reminder. */

    .clinical-note-cleaner >
    .clinical-note-cleaner__privacy-reminder {
        gap: 0.6rem;

        padding:
            1.25rem
            1rem
            0;

        border-radius:
            16px
            16px
            0
            0;
    }


    .clinical-note-cleaner >
    .clinical-note-cleaner__privacy-reminder::after {
        top: 1.25rem;

        right: 1rem;
        left: 1rem;
    }


    .clinical-note-cleaner__privacy-icon {
        flex-basis: 22px;

        width: 22px;
        height: 22px;

        margin:
            0.8rem
            0
            0.8rem
            0.8rem;

        font-size: 0.9rem;
    }


    .clinical-note-cleaner__privacy-reminder >
    div:last-child {
        padding:
            0.75rem
            0.8rem
            0.75rem
            0;
    }


    .clinical-note-cleaner__privacy-reminder strong {
        font-size: 0.86rem;
    }


    .clinical-note-cleaner__privacy-reminder p {
        font-size: 0.84rem;
    }


    /* Input. */

    .clinical-note-cleaner > .form-item-note {
        padding:
            1.1rem
            1rem
            0;
    }


    .clinical-note-cleaner textarea {
        min-height: 220px;

        padding: 1rem;
    }


    /* Validation. */

    .clinical-note-cleaner >
    .clinical-note-cleaner__message {
        width: 100%;

        margin: 0 !important;

        padding:
            0.85rem
            1rem
            0;

        border-right:
            1px solid #d7e5ef;

        border-left:
            1px solid #d7e5ef;

        background: #fff;
    }


    .clinical-note-cleaner__message
    .clinical-note-cleaner__error {
        padding:
            0.8rem
            0.85rem
            0.8rem
            2.8rem !important;

        border-radius:
            8px !important;

        font-size: 0.87rem;
    }


    .clinical-note-cleaner__message
    .clinical-note-cleaner__error::before {
        left: 0.8rem;

        width: 1.25rem;
        height: 1.25rem;

        font-size: 0.75rem;
    }


    /* Buttons. */

    .clinical-note-cleaner >
    .form-actions {
        grid-template-columns: 1fr;

        padding:
            1.25rem
            1rem
            1.5rem;

        border-radius:
            0
            0
            16px
            16px;
    }


    .clinical-note-cleaner
    .form-actions
    .button {
        width: 100%;
    }


    /* Results. */

    .clinical-note-cleaner__result-content {
        padding: 1rem;

        border-radius: 16px;
    }


    .clinical-note-cleaner__result-content > h2 {
        margin:
            -1rem
            -1rem
            1rem;

        padding:
            1.25rem
            1rem;
    }


    .clinical-note-cleaner__comparison {
        grid-template-columns: 1fr;
    }


    .clinical-note-cleaner__panel {
        padding: 1rem;
    }


    .clinical-note-cleaner__note {
        min-height: auto;
    }


    /* Summary cards. */

    .clinical-note-cleaner__summary-card {
        padding: 1.1rem;

        border-radius: 13px;
    }


    .clinical-note-cleaner__summary-header {
        gap: 0.7rem;
    }


    .clinical-note-cleaner__summary-icon {
        flex-basis: 34px;

        width: 34px;
        height: 34px;
    }


    .clinical-note-cleaner__summary-card
    .clinical-note-cleaner__summary-list > li {
        min-height: 44px;

        padding:
            0.7rem
            0.8rem
            0.7rem
            2.85rem !important;

        font-size: 0.88rem;
    }


    .clinical-note-cleaner__summary-card
    .clinical-note-cleaner__summary-list > li::before {
        left: 0.8rem;

        width: 20px;
        height: 20px;
    }


    /* Important notice. */

    .clinical-note-cleaner__disclaimer {
        gap: 0.65rem;

        padding:
            0.85rem
            0.9rem;
    }


    .clinical-note-cleaner__disclaimer-icon {
        font-size: 1.2rem;
    }


    .clinical-note-cleaner__disclaimer strong {
        font-size: 0.86rem;
    }


    .clinical-note-cleaner__disclaimer p {
        font-size: 0.84rem;
    }
}


/* =========================================================
 * VERY SMALL MOBILE
 * ========================================================= */

@media (max-width: 480px) {

    .clinical-note-cleaner__intro {
        padding:
            1.75rem
            1rem;
    }


    .clinical-note-cleaner__intro h1,
    .clinical-note-cleaner__intro h2 {
        font-size: 2rem;
    }


    .clinical-note-cleaner__intro > p {
        font-size: 0.92rem;
    }


    .clinical-note-cleaner textarea {
        min-height: 190px;
    }
}