/* =========================================================
   WORD COUNTER
   https://charactercounter.com/word-counter
   ========================================================= */


/* =========================================================
   VARIABLES
   ========================================================= */

:root {
    --wc-text: #3d3d3d;
    --wc-text-light: rgba(0, 0, 0, 0.6);

    --wc-white: #ffffff;
    --wc-background: #f6f7f9;
    --wc-soft-background: #fafafa;

    --wc-blue: #4285f4;
    --wc-blue-dark: #1a73e8;

    --wc-green: #1e7b1e;
    --wc-red: #d52d2b;

    --wc-border: #d9d9d9;
    --wc-soft-border: #e7e7e7;

    --wc-radius: 12px;

    --wc-shadow:
        0 4px 14px rgba(0, 0, 0, 0.05);
}


/* =========================================================
   BOX SIZING
   ========================================================= */

.word-counter-page *,
.word-counter-page *::before,
.word-counter-page *::after {
    box-sizing: border-box;
}


/* =========================================================
   HEADER
   ========================================================= */

.word-counter-page .header {
    background-color: #f1f1f1;
}

.word-counter-page .header.activated {
    background-color: #f1f1f1;
}

.word-counter-page .menu {
    background-color: #f1f1f1;
}


/* =========================================================
   GENERAL
   ========================================================= */

.word-counter-page main {
    width: 100%;
}

.word-counter-page .sr-only {
    position: absolute !important;

    width: 1px;
    height: 1px;

    padding: 0;
    margin: -1px;

    overflow: hidden;

    clip: rect(0, 0, 0, 0);

    white-space: nowrap;

    border: 0;
}


/* =========================================================
   ENTIRE PAGE AREA
   ========================================================= */

.word-counter-main-page {
    width: 100%;

    padding-top: 88px;

    background: #ffffff;
}


/* =========================================================
   CONTINUOUS CONTENT + 300PX SIDEBAR
   ========================================================= */

.word-counter-page-layout {
    width: 100%;

    display: grid;

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

    gap: 18px;

    align-items: stretch;
}

.word-counter-content-column {
    width: 100%;
    min-width: 0;
}


/* =========================================================
   CONTINUOUS RAPtIVE SIDEBAR
   ========================================================= */

#sidebar {
    width: 300px;
    min-width: 300px;

    min-height: 100%;

    margin: 0;
    padding: 0;

    position: relative;

    align-self: stretch;

    background: transparent;

    overflow: visible;
}


/* =========================================================
   WORD COUNTER TOOL
   ========================================================= */

.word-counter-section {
    width: 100%;

    margin: 0;

    padding:
        0
        0
        55px;

    background: #ffffff;
}


/* =========================================================
   WORD COUNTER HEADING
   ========================================================= */

.word-counter-heading {
    width: 100%;
    max-width: 820px;

    margin:
        0
        auto
        24px;

    padding:
        0
        12px;

    text-align: center;
}

.word-counter-title {
    margin:
        0
        0
        18px;

    color: var(--wc-text);

    font-size: 38px;
    line-height: 1.15;
    font-weight: 700;
}

.word-counter-description {
    width: 100%;
    max-width: 780px;

    margin: 0 auto;

    color: var(--wc-text-light);

    font-size: 17px;
    line-height: 1.55;
    font-weight: 300;

    letter-spacing: 0.2px;

    text-align: center;

    overflow-wrap: break-word;
}


/* =========================================================
   PRIMARY METRICS
   ========================================================= */

.primary-metrics {
    width: 100%;

    display: grid;

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

    gap: 10px;

    margin-bottom: 14px;
}

.primary-metric {
    min-width: 0;

    background: var(--wc-white);

    border: 1px solid var(--wc-border);
    border-radius: var(--wc-radius);

    overflow: hidden;

    box-shadow: var(--wc-shadow);
}

.primary-metric-label {
    min-height: 58px;

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

    padding:
        8px
        10px;

    color: var(--wc-text-light);

    background: var(--wc-soft-background);

    border-bottom:
        1px solid
        var(--wc-soft-border);

    font-size: 19px;
    line-height: 1.18;
    font-weight: 400;

    text-align: center;
}

.primary-metric-value {
    min-height: 62px;

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

    padding:
        8px
        10px;

    color: var(--wc-blue-dark);

    background: var(--wc-white);

    font-size: 30px;
    line-height: 1;
    font-weight: 500;

    text-align: center;

    overflow: hidden;
}


/* Words */

#wordCount {
    font-size: 36px;
    font-weight: 400;
}


/* Characters */

#characterCount {
    font-size: 31px;
    font-weight: 500;
}


/* Remaining Words */

#wordsRemaining {
    font-weight: 600;
}

#wordsRemaining.within-limit {
    color: var(--wc-green);
}

#wordsRemaining.over-limit {
    color: var(--wc-red);
}


/* =========================================================
   WORD LIMIT
   ========================================================= */

.metric-title-stack {
    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.metric-title-main {
    display: block;

    width: 100%;

    line-height: 1.15;

    text-align: center;
}

.metric-title-note {
    display: block;

    width: 100%;

    margin-top: 3px;

    color: rgba(0, 0, 0, 0.48);

    font-size: 13px;
    line-height: 1.1;
    font-weight: 400;

    text-align: center;
}

.metric-limit-input {
    width: 100%;
    max-width: 150px;
    height: 36px;

    padding:
        5px
        9px;

    color: var(--wc-text);

    background: var(--wc-white);

    border: 1px solid #cccccc;
    border-radius: 7px;

    outline: none;

    font-size: 15px;
    line-height: 1;

    text-align: center;
}

.metric-limit-input::placeholder {
    color: rgba(0, 0, 0, 0.42);
}

.metric-limit-input:focus {
    border-color: var(--wc-blue);

    box-shadow:
        0 0 0 3px rgba(66, 133, 244, 0.15);
}

.metric-limit-input::-webkit-inner-spin-button,
.metric-limit-input::-webkit-outer-spin-button {
    margin: 0;
}

.metric-limit-input[type="number"] {
    -moz-appearance: textfield;
}


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

.word-textarea-area {
    width: 100%;
}

.textarea-wrapper {
    position: relative;

    width: 100%;
}

.word-textarea {
    display: block;

    width: 100%;
    height: 350px;

    min-height: 90px;
    max-height: 1200px;

    padding:
        14px
        14px
        56px;

    color: #000000;

    background: var(--wc-white);

    border: 4px solid #777777;
    border-radius: 12px;

    outline: none;

    resize: vertical;

    overflow: auto;

    font-family: Arial, sans-serif;
    font-size: 17px;
    line-height: 1.55;

    letter-spacing: 0;

    box-shadow: none;

    transition:
        border-color 0.2s ease;
}

.word-textarea:hover {
    border-color: #555555;
}

.word-textarea:focus {
    border-color: #000000;
}

.word-textarea::placeholder {
    color: rgba(0, 0, 0, 0.45);
}


/* =========================================================
   COPY / CLEAR
   ========================================================= */

.textarea-actions {
    position: absolute;

    right: 18px;
    bottom: 16px;

    z-index: 3;

    display: flex;
    align-items: center;

    gap: 7px;
}

.textarea-action {
    padding:
        6px
        11px;

    color: var(--wc-blue-dark);

    background: rgba(255, 255, 255, 0.96);

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

    font-size: 13px;
    line-height: 1;
    font-weight: 400;

    letter-spacing: 0.3px;

    cursor: pointer;

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

.textarea-action:hover {
    color: var(--wc-blue-dark);

    background: #f3f3f3;

    border-color: #bfbfbf;
}

.textarea-action:disabled {
    opacity: 0.7;

    cursor: default;
}


/* =========================================================
   SECONDARY METRICS
   ========================================================= */

.secondary-metrics {
    width: 100%;

    display: grid;

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

    gap: 12px;

    margin-top: 18px;
}

.secondary-metric {
    min-width: 0;
    min-height: 76px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    padding:
        13px
        16px;

    background: var(--wc-white);

    border: 1px solid var(--wc-border);
    border-radius: 10px;

    box-shadow:
        0 3px 10px rgba(0, 0, 0, 0.04);
}

.secondary-metric-label {
    min-width: 0;

    color: var(--wc-text-light);

    font-size: 15.5px;
    line-height: 1.3;
    font-weight: 400;

    text-align: left;
}

.secondary-metric-value {
    flex: 0 0 auto;

    color: var(--wc-blue-dark);

    font-size: 24px;
    line-height: 1;
    font-weight: 500;

    text-align: right;
}

.secondary-metric-value span {
    display: inline-block;

    max-width: 100%;

    white-space: nowrap;
}


/* Mobile Characters hidden on desktop */

.secondary-metrics .mobile-character-metric {
    display: none;
}

#mobileCharacterCount {
    font-weight: 500;
}


/* =========================================================
   INFO ICON
   ========================================================= */

.info-icon {
    position: relative;

    width: 17px;
    height: 17px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-left: 4px;

    color: #777777;

    background: var(--wc-white);

    border: 1px solid #a9a9a9;
    border-radius: 50%;

    font-size: 11px;
    line-height: 1;
    font-weight: 700;

    cursor: help;

    vertical-align: middle;

    outline: none;
}

.tooltip-text {
    position: absolute;

    left: 50%;
    bottom: calc(100% + 8px);

    z-index: 50;

    width: 210px;
    max-width: 70vw;

    padding:
        8px
        10px;

    color: #ffffff;

    background: #333333;

    border-radius: 6px;

    font-size: 12px;
    line-height: 1.35;
    font-weight: 400;

    text-align: center;

    transform:
        translateX(-50%)
        translateY(4px);

    opacity: 0;
    visibility: hidden;

    pointer-events: none;

    transition:
        opacity 0.18s ease,
        transform 0.18s ease;
}

.tooltip-text::after {
    content: "";

    position: absolute;

    left: 50%;
    top: 100%;

    transform: translateX(-50%);

    border-width: 5px;
    border-style: solid;

    border-color:
        #333333
        transparent
        transparent
        transparent;
}

.info-icon:hover .tooltip-text,
.info-icon:focus .tooltip-text,
.info-icon:focus-within .tooltip-text {
    opacity: 1;
    visibility: visible;

    transform:
        translateX(-50%)
        translateY(0);
}


/* =========================================================
   CHARACTER COUNTER RECOMMENDATION
   ========================================================= */

.character-counter-recommendation {
    width: 100%;

    margin-top: 18px;

    padding:
        14px
        16px;

    color: var(--wc-text-light);

    background: #f8fbff;

    border: 1px solid #d9e7fb;
    border-radius: 10px;

    font-size: 15.5px;
    line-height: 1.55;
    font-weight: 400;

    text-align: left;

    box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.025);
}

.character-counter-recommendation strong {
    color: var(--wc-text);

    font-weight: 600;
}

.character-counter-recommendation a {
    color: var(--wc-blue-dark);

    font-weight: 600;

    text-decoration: none;
}

.character-counter-recommendation a:hover {
    text-decoration: underline;
}


/* =========================================================
   LOWER SECTIONS
   ========================================================= */

.word-counter-content-column > .section {
    width: 100%;

    margin: 0;

    padding:
        48px
        0;

    text-align: left;
}


/* =========================================================
   SECTION TITLES
   ========================================================= */

.word-counter-page .section-title {
    position: relative;

    display: block;

    width: fit-content;
    max-width: 100%;

    margin:
        0
        auto
        36px;

    padding-bottom: 9px;

    color: var(--wc-text);

    font-size: 29px;
    line-height: 1.25;
    font-weight: 700;

    text-align: center;
}

.word-counter-page .section-title::after {
    display: none;
}

.word-counter-page .section-title::before {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;
    height: 4px;

    background: var(--wc-blue);

    border-radius: 999px;
}


/* =========================================================
   WORD COUNTER GUIDE
   ========================================================= */

.word-counter-guide {
    background: transparent;
}

.guide-content {
    width: 100%;

    margin: 0;

    padding:
        30px;

    color: var(--wc-text);

    background: var(--wc-white);

    border: 1px solid var(--wc-soft-border);
    border-radius: 16px;

    box-shadow: var(--wc-shadow);

    text-align: left;
}

.guide-content h2 {
    margin:
        32px
        0
        12px;

    padding:
        11px
        14px;

    color: var(--wc-text);

    background: #f8fbff;

    border-left: 5px solid var(--wc-blue);
    border-radius: 8px;

    font-size: 24px;
    line-height: 1.3;
    font-weight: 700;

    text-align: left;
}

.guide-content h2:first-child {
    margin-top: 0;
}

.guide-content p {
    margin:
        0
        0
        17px;

    color: var(--wc-text-light);

    font-size: 18px;
    line-height: 1.7;
    font-weight: 300;

    letter-spacing: 0.2px;

    text-align: left;
}

.guide-content strong {
    color: var(--wc-text);

    font-weight: 600;
}

.guide-content a {
    color: var(--wc-blue-dark);

    font-weight: 600;
}

.guide-content a:hover {
    text-decoration: underline;
}

.guide-list {
    margin:
        3px
        0
        16px
        29px;

    padding: 0;

    list-style-type: disc;

    text-align: left;
}

.guide-list li {
    margin-bottom: 7px;

    color: var(--wc-text-light);

    font-size: 17px;
    line-height: 1.6;
    font-weight: 300;

    letter-spacing: 0.2px;

    text-align: left;
}


/* =========================================================
   EXAMPLES
   ========================================================= */

.word-counter-examples {
    background: transparent;
}

.examples-content {
    width: 100%;

    margin: 0;
}

.examples-content > p {
    max-width: 800px;

    margin:
        0
        auto
        25px;

    color: var(--wc-text-light);

    font-size: 18px;
    line-height: 1.65;
    font-weight: 300;

    text-align: center;
}

.examples-grid {
    width: 100%;

    display: grid;

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

    gap: 14px;
}

.example-card {
    min-width: 0;

    padding: 18px;

    background: var(--wc-white);

    border: 1px solid var(--wc-border);
    border-radius: 12px;

    box-shadow: var(--wc-shadow);

    text-align: left;
}

.example-card h3 {
    margin:
        0
        0
        10px;

    color: var(--wc-text);

    font-size: 19px;
    line-height: 1.3;

    text-align: left;
}

.example-card code {
    display: block;

    margin-bottom: 13px;
    padding: 10px;

    color: #111111;

    background: #f6f6f6;

    border: 1px solid var(--wc-soft-border);
    border-radius: 7px;

    font-size: 15px;
    line-height: 1.45;

    white-space: pre-wrap;

    overflow-wrap: anywhere;
}

.example-card p {
    margin:
        0
        0
        8px;

    color: var(--wc-text-light);

    font-size: 15px;
    line-height: 1.55;
    font-weight: 300;

    text-align: left;
}

.example-card p:last-child {
    margin-bottom: 0;
}

.example-card strong {
    color: var(--wc-text);
}


/* =========================================================
   FEATURES
   ========================================================= */

.word-counter-features {
    background: transparent;
}

.feature-table-wrap {
    width: 100%;

    margin: 0;

    overflow-x: auto;

    background: var(--wc-white);

    border: 1px solid var(--wc-border);
    border-radius: 12px;

    box-shadow: var(--wc-shadow);
}

.feature-table {
    width: 100%;

    border-collapse: collapse;

    font-size: 16px;
}

.feature-table th,
.feature-table td {
    padding: 15px;

    border-bottom:
        1px solid
        var(--wc-soft-border);

    text-align: left;
    vertical-align: top;
}

.feature-table th {
    color: var(--wc-text);

    background: #f4f4f4;

    font-weight: 700;
}

.feature-table td {
    color: var(--wc-text-light);

    line-height: 1.55;
}

.feature-table td:first-child {
    width: 220px;

    color: var(--wc-text);

    font-weight: 700;

    white-space: nowrap;
}

.feature-table tr:last-child td {
    border-bottom: 0;
}


/* =========================================================
   RELATED WORD TOOLS
   ========================================================= */

.related-word-tools {
    background: transparent;
}

.related-tools-content {
    width: 100%;

    margin: 0;
}

.related-tools-content > p {
    max-width: 800px;

    margin:
        0
        auto
        25px;

    color: var(--wc-text-light);

    font-size: 18px;
    line-height: 1.65;
    font-weight: 300;

    text-align: center;
}

.related-tools-grid {
    width: 100%;

    display: grid;

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

    gap: 11px;
}

.related-tool-card {
    min-height: 68px;

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

    padding: 13px;

    color: var(--wc-blue-dark);

    background: var(--wc-white);

    border: 1px solid var(--wc-border);
    border-radius: 9px;

    box-shadow:
        0 3px 10px rgba(0, 0, 0, 0.04);

    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;

    text-align: center;

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

.related-tool-card:hover {
    color: var(--wc-blue-dark);

    background: #f8fbff;

    border-color: var(--wc-blue);

    transform: translateY(-2px);

    box-shadow:
        0 7px 16px rgba(0, 0, 0, 0.07);
}


/* =========================================================
   FAQ
   ========================================================= */

.word-counter-faq {
    background: transparent;

    padding-bottom: 65px !important;
}

.faq-content {
    width: 100%;

    margin: 0;
}

.faq-item {
    margin-bottom: 13px;

    padding:
        19px
        21px;

    background: var(--wc-white);

    border: 1px solid var(--wc-soft-border);
    border-radius: 10px;

    box-shadow:
        0 3px 10px rgba(0, 0, 0, 0.035);

    text-align: left;
}

.faq-item:last-child {
    margin-bottom: 0;
}

.faq-item h3 {
    margin:
        0
        0
        8px;

    color: var(--wc-text);

    font-size: 20px;
    line-height: 1.35;

    text-align: left;
}

.faq-item p {
    margin: 0;

    color: var(--wc-text-light);

    font-size: 17px;
    line-height: 1.68;
    font-weight: 300;

    text-align: left;
}

.faq-item strong {
    color: var(--wc-text);

    font-weight: 600;
}


/* =========================================================
   CONTENT VISIBILITY
   ========================================================= */

.word-counter-guide,
.word-counter-examples,
.word-counter-features,
.related-word-tools,
.word-counter-faq {
    content-visibility: auto;

    contain-intrinsic-size:
        auto 900px;
}


/* =========================================================
   WIDE DESKTOP
   ========================================================= */

@media screen and (min-width: 1280px) {

    .word-counter-page-layout {
        grid-template-columns:
            900px
            300px;

        gap: 10px;

        justify-content: center;
    }

    .word-counter-content-column {
        width: 900px;
        max-width: 900px;
    }

}


/* =========================================================
   992px - 1279px
   ========================================================= */

@media screen and (min-width: 992px) and (max-width: 1279px) {

    .word-counter-page-layout {
        grid-template-columns:
            minmax(0, 1fr)
            300px;

        gap: 10px;
    }

}


/* =========================================================
   BELOW 992px
   ========================================================= */

@media screen and (max-width: 991px) {

    .word-counter-page-layout {
        display: block;
    }

    .word-counter-content-column {
        width: 100%;
        max-width: 900px;

        margin:
            0
            auto;
    }

    #sidebar {
        display: none;
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 900px) {

    .primary-metrics {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .secondary-metrics {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .examples-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

}


/* =========================================================
   MOBILE / SMALL TABLET
   ========================================================= */

@media screen and (max-width: 768px) {

    .word-counter-page .menu {
        background-color: #f1f1f1;
    }

    .word-counter-main-page {
        padding-top: 80px;
    }


    /* Tool */

    .word-counter-section {
        padding-bottom: 42px;
    }


    /* Heading */

    .word-counter-heading {
        margin-bottom: 20px;

        padding:
            0
            8px;
    }

    .word-counter-title {
        margin-bottom: 16px;

        font-size: 32px;
    }

    .word-counter-description {
        font-size: 16px;
        line-height: 1.5;
    }


    /* Primary metrics */

    .primary-metrics {
        gap: 8px;
    }

    .primary-metric-label {
        min-height: 52px;

        padding:
            6px
            8px;

        font-size: 18px;
    }

    .primary-metric-value {
        min-height: 54px;

        padding:
            7px
            8px;

        font-size: 27px;
    }

    #wordCount {
        font-size: 33px;
        font-weight: 400;
    }

    #characterCount {
        font-size: 28px;
    }

    .metric-limit-input {
        max-width: 180px;

        height: 35px;

        font-size: 15px;
    }


    /* Textarea */

    .word-textarea {
        height: 300px;

        padding:
            12px
            12px
            53px;

        font-size: 16px;
    }

    .textarea-actions {
        right: 15px;
        bottom: 14px;
    }

    .textarea-action {
        padding:
            6px
            9px;

        font-size: 12px;
    }


    /* Secondary metrics */

    .secondary-metric {
        min-height: 70px;

        padding:
            11px
            13px;
    }

    .secondary-metric-label {
        font-size: 15px;
    }

    .secondary-metric-value {
        font-size: 23px;
    }


    /* Character Counter recommendation */

    .character-counter-recommendation {
        margin-top: 16px;

        padding:
            13px
            14px;

        font-size: 15px;
    }


    /* Lower sections */

    .word-counter-content-column > .section {
        padding:
            42px
            0;
    }

    .word-counter-page .section-title {
        margin-bottom: 31px;

        font-size: 25px;
    }


    /* Guide */

    .guide-content {
        padding:
            21px
            16px;

        border-radius: 13px;
    }

    .guide-content h2 {
        margin-top: 27px;

        padding:
            10px
            12px;

        font-size: 22px;
    }

    .guide-content p {
        font-size: 17px;
    }

    .guide-list li {
        font-size: 16.5px;
    }


    /* Related */

    .related-tools-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }


    /* FAQ */

    .faq-item {
        padding: 17px;
    }

    .faq-item h3 {
        font-size: 19px;
    }

    .faq-item p {
        font-size: 16.5px;
    }

}


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

@media screen and (max-width: 520px) {

    .word-counter-section {
        padding-bottom: 36px;
    }


    /* =====================================================
       HEADING
       ===================================================== */

    .word-counter-heading {
        margin-bottom: 18px;

        padding:
            0
            6px;
    }

    .word-counter-title {
        margin-bottom: 14px;

        font-size: 30px;
    }

    .word-counter-description {
        font-size: 15.5px;
    }


    /* =====================================================
       PRIMARY METRICS
       ===================================================== */

    .primary-metrics {
        grid-template-columns: 1fr;

        gap: 8px;
    }

    .primary-metric {
        display: grid;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(110px, 0.55fr);

        align-items: stretch;

        min-height: 58px;
    }

    .primary-metric-label {
        min-height: 58px;

        justify-content: flex-start;

        padding:
            9px
            13px;

        background: var(--wc-soft-background);

        border-bottom: 0;

        border-right:
            1px solid
            var(--wc-soft-border);

        font-size: 19px;

        text-align: left;
    }

    .primary-metric-value {
        min-height: 58px;

        padding: 8px;

        font-size: 26px;
    }

    #wordCount {
        font-size: 31px;
        font-weight: 400;
    }

    .metric-title-stack {
        align-items: flex-start;
    }

    .metric-title-main,
    .metric-title-note {
        text-align: left;
    }

    .metric-limit-input {
        max-width: 115px;

        height: 34px;

        padding:
            4px
            5px;

        font-size: 14px;
    }

    .primary-metrics .desktop-character-metric {
        display: none;
    }


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

    .word-textarea {
        height: 260px;
        min-height: 80px;

        border-width: 4px;
        border-radius: 10px;
    }


    /* =====================================================
       SECONDARY METRICS
       ===================================================== */

    .secondary-metrics {
        grid-template-columns: 1fr;

        gap: 8px;

        margin-top: 10px;
    }

    .secondary-metrics .mobile-character-metric {
        display: flex;
    }

    .secondary-metric {
        min-height: 58px;

        padding:
            10px
            13px;
    }

    .secondary-metric-label {
        font-size: 16px;
    }

    .secondary-metric-value {
        font-size: 23px;
    }

    #mobileCharacterCount {
        font-size: 23px;
        font-weight: 500;
    }


    /* =====================================================
       CHARACTER COUNTER RECOMMENDATION
       ===================================================== */

    .character-counter-recommendation {
        margin-top: 12px;

        padding:
            12px
            13px;

        font-size: 14.5px;
        line-height: 1.5;
    }


    /* =====================================================
       LOWER SECTIONS
       ===================================================== */

    .word-counter-content-column > .section {
        padding:
            36px
            0;
    }

    .word-counter-page .section-title {
        margin-bottom: 27px;

        font-size: 23px;
    }


    /* Guide */

    .guide-content {
        padding:
            17px
            13px;
    }

    .guide-content h2 {
        font-size: 20px;
    }

    .guide-content p {
        font-size: 16.5px;
    }


    /* Examples */

    .examples-grid {
        grid-template-columns: 1fr;
    }

    .examples-content > p {
        font-size: 16.5px;
    }


    /* Related */

    .related-tools-grid {
        grid-template-columns: 1fr;
    }

    .related-tools-content > p {
        font-size: 16.5px;
    }


    /* Feature Table */

    .feature-table {
        font-size: 14px;
    }

    .feature-table th,
    .feature-table td {
        padding: 11px;
    }

    .feature-table td:first-child {
        width: auto;

        white-space: normal;
    }


    /* FAQ */

    .word-counter-faq {
        padding-bottom: 50px !important;
    }

}


/* =========================================================
   VERY SMALL SCREENS
   ========================================================= */

@media screen and (max-width: 390px) {

    .word-counter-title {
        font-size: 28px;
    }

    .word-counter-description {
        font-size: 15px;
    }


    /* Primary */

    .primary-metric {
        grid-template-columns:
            minmax(0, 1fr)
            105px;
    }

    .primary-metric-label {
        padding:
            8px
            10px;

        font-size: 18px;
    }

    .primary-metric-value {
        font-size: 24px;
    }

    #wordCount {
        font-size: 29px;
        font-weight: 400;
    }

    .metric-limit-input {
        width: 95px;

        font-size: 13px;
    }


    /* Textarea */

    .word-textarea {
        height: 220px;
    }


    /* Secondary */

    .secondary-metric-label {
        font-size: 15.5px;
    }

    .secondary-metric-value {
        font-size: 22px;
    }

    #mobileCharacterCount {
        font-size: 22px;
    }


    /* Character Counter recommendation */

    .character-counter-recommendation {
        padding:
            11px
            12px;

        font-size: 14px;
    }


    /* Tooltip */

    .tooltip-text {
        width: 185px;
    }

}