/* Shared Coach composer grammar for the full page and contextual drawer. */

body.coach-page .chat-composer,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer,
body.coach-page.coach-page--embed-drawer .chat-composer {
    --coach-composer-active-shadow: none;
    gap: 9px;
    min-height: 112px;
    padding: 15px 16px 12px 18px;
    border-color: rgba(91, 196, 176, 0.23);
    border-radius: 16px;
    background: #0d0d0d;
    box-shadow: none;
}

body.coach-page .chat-composer::before {
    display: none;
}

body.coach-page .chat-composer-field {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: start;
    gap: 14px;
    min-width: 0;
}

body.coach-page .chat-ai-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    min-width: 38px;
    margin-top: 8px;
}

body.coach-page .chat-ai-status .dashboard-command-ai-core {
    color: var(--coach-accent-strong);
}

body.coach-page .chat-composer:hover,
body.coach-page .chat-composer:focus-within,
body.coach-page .chat-composer.is-recording,
body.coach-page .chat-composer.is-transcribing,
body.coach-page .chat-composer.is-tools-open,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer:hover,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer:focus-within,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer.is-recording,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer.is-transcribing,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer.is-tools-open,
body.coach-page.coach-page--embed-drawer .chat-composer:hover,
body.coach-page.coach-page--embed-drawer .chat-composer:focus-within,
body.coach-page.coach-page--embed-drawer .chat-composer.is-recording,
body.coach-page.coach-page--embed-drawer .chat-composer.is-transcribing,
body.coach-page.coach-page--embed-drawer .chat-composer.is-tools-open {
    border-color: rgba(91, 196, 176, 0.34);
    background: #0d0d0d;
    box-shadow: none;
}

body.coach-page .chat-composer .chat-input,
body.coach-page:not(.coach-page--embed-drawer) .chat-composer .chat-input,
body.coach-page.coach-page--embed-drawer .chat-composer .chat-input {
    min-height: 38px;
    max-height: 132px;
    padding: 6px 0;
    font-size: 16px;
    line-height: 1.45;
}

body.coach-page .chat-tool-btn {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
}

body.coach-page .chat-tool-btn--label {
    width: auto;
    padding-inline: 10px;
}

body.coach-page .chat-send,
body.coach-page:not(.coach-page--embed-drawer) .chat-send,
body.coach-page.coach-page--embed-drawer .chat-send {
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
    background: rgba(226, 232, 240, 0.92);
    color: #0b0f14;
}

body.coach-page .chat-voice-visualizer {
    grid-template-columns: max-content max-content max-content;
    align-items: center;
    justify-content: center;
    justify-items: center;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    min-height: 34px;
    padding: 0;
}

body.coach-page .chat-voice-bars {
    justify-content: center;
    width: max-content;
    max-width: 100%;
    min-width: 0;
}

body.coach-page .chat-composer-status {
    text-align: center;
}

body.coach-page.coach-page--embed-drawer .chat-composer {
    min-height: 108px;
    padding: 14px 15px 11px 17px;
    border-radius: 14px;
}

:is(html.light, html[data-theme="light"]) body.coach-page:not(.coach-page--embed-drawer) .chat-composer,
:is(html.light, html[data-theme="light"]) body.coach-page:not(.coach-page--embed-drawer) .chat-composer:hover,
:is(html.light, html[data-theme="light"]) body.coach-page:not(.coach-page--embed-drawer) .chat-composer:focus-within,
:is(html.light, html[data-theme="light"]) body.coach-page:not(.coach-page--embed-drawer) .chat-composer.is-recording,
:is(html.light, html[data-theme="light"]) body.coach-page:not(.coach-page--embed-drawer) .chat-composer.is-transcribing,
:is(html.light, html[data-theme="light"]) body.coach-page:not(.coach-page--embed-drawer) .chat-composer.is-tools-open,
:is(html.light, html[data-theme="light"]) body.coach-page.coach-page--embed-drawer .chat-composer,
:is(html.light, html[data-theme="light"]) body.coach-page.coach-page--embed-drawer .chat-composer:hover,
:is(html.light, html[data-theme="light"]) body.coach-page.coach-page--embed-drawer .chat-composer:focus-within,
:is(html.light, html[data-theme="light"]) body.coach-page.coach-page--embed-drawer .chat-composer.is-recording,
:is(html.light, html[data-theme="light"]) body.coach-page.coach-page--embed-drawer .chat-composer.is-transcribing,
:is(html.light, html[data-theme="light"]) body.coach-page.coach-page--embed-drawer .chat-composer.is-tools-open {
    border-color: rgba(15, 118, 110, 0.24);
    background: #ffffff;
    box-shadow: none;
}

@media (max-width: 720px) {
    body.coach-page .chat-composer,
    body.coach-page.coach-page--embed-drawer .chat-composer {
        min-height: 118px;
        padding: 13px 12px 11px;
        border-radius: 14px;
    }

    body.coach-page .chat-composer .chat-input,
    body.coach-page:not(.coach-page--embed-drawer) .chat-composer .chat-input,
    body.coach-page.coach-page--embed-drawer .chat-composer .chat-input {
        min-height: 50px;
        padding: 5px 0;
        font-size: 15px;
    }

    body.coach-page .chat-composer-field {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 10px;
    }

    body.coach-page .chat-ai-status {
        width: 34px;
        min-width: 34px;
        margin-top: 9px;
    }

    body.coach-page .chat-tool-btn {
        width: 34px;
        min-width: 34px;
        height: 34px;
        min-height: 34px;
    }

    body.coach-page .chat-tool-btn--label {
        width: auto;
        padding-inline: 8px;
        font-size: 12px;
    }

    body.coach-page .chat-tool-btn--label span {
        display: inline;
    }

    body.coach-page .chat-send,
    body.coach-page:not(.coach-page--embed-drawer) .chat-send,
    body.coach-page.coach-page--embed-drawer .chat-send {
        width: 38px;
        min-width: 38px;
        height: 38px;
        min-height: 38px;
    }

    body.coach-page .chat-voice-visualizer {
        grid-template-columns: max-content minmax(0, 140px);
        justify-content: center;
        width: 100%;
    }

    body.coach-page .chat-voice-bars {
        width: 100%;
    }

    body.coach-page .chat-voice-label {
        display: none;
    }
}
