/* Estilos do chat MyErpie. Global (o projeto não usa scoped .razor.css — o index.html só
   carrega Server.styles.css). Prefixo .erpie-md p/ não vazar para o resto. */

/* O global.css tem `p { font-size:1.8rem; opacity:.6; text-align:justify }` que vazava para o
   markdown do bot (grande, esbatido, justificado). Repõe: herda o tamanho (= balão do user),
   opacidade cheia, alinhado à esquerda. */
.erpie-md { line-height: 1.6; text-align: left; }

.erpie-md p,
.erpie-md li {
    margin: 0 0 .6rem;
    text-align: left;
    font-size: inherit;
    line-height: 1.6;
    opacity: 1;
}

.erpie-md li { margin: .15rem 0; }
.erpie-md p:last-child { margin-bottom: 0; }
.erpie-md > :first-child { margin-top: 0; }

.erpie-md pre {
    background: var(--bg);
    border: 1px solid var(--borderColor);
    border-radius: 8px;
    padding: 10px 12px;
    margin: 8px 0;
    overflow-x: auto;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 12.5px;
    line-height: 1.5;
}

.erpie-md code {
    background: var(--bg);
    border: 1px solid var(--borderColor);
    padding: 1px 6px;
    border-radius: 6px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 12.5px;
}

.erpie-md pre code {
    background: none;
    border: none;
    padding: 0;
}

.erpie-md h1,
.erpie-md h2,
.erpie-md h3,
.erpie-md h4 {
    margin: .7rem 0 .4rem;
    line-height: 1.25;
    font-weight: 600;
    opacity: 1;
    text-align: left;
}

.erpie-md h1 { font-size: 1.15rem; }
.erpie-md h2 { font-size: 1.07rem; }
.erpie-md h3 { font-size: 1rem; }

.erpie-md ul,
.erpie-md ol {
    padding-left: 22px;
    margin: .3rem 0 .6rem;
}

.erpie-md a {
    color: var(--color-primary);
    text-decoration: underline;
}

.erpie-md blockquote {
    border-left: 3px solid var(--color-primary);
    margin: .4rem 0;
    padding: .1rem 0 .1rem .8rem;
    color: var(--color-textGrey);
}

.erpie-md table {
    border-collapse: collapse;
    margin: .5rem 0;
}

.erpie-md th,
.erpie-md td {
    border: 1px solid var(--borderColor);
    padding: 5px 10px;
}

.erpie-md th { background: var(--bg); }

.erpie-md hr {
    border: none;
    border-top: 1px solid var(--borderColor);
    margin: .8rem 0;
}

.erpie-md img { max-width: 100%; }

/* Botão "citar" — escondido, aparece só ao passar o rato no balão (top-right). */
.erpie-reply-btn {
    position: absolute;
    top: -9px;
    right: -9px;
    opacity: 0;
    transition: opacity .15s;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--bg-panel);
    border: 1px solid var(--borderColor);
    color: var(--color-textGrey);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: .85rem;
}

.erpie-msg-wrap:hover .erpie-reply-btn { opacity: 1; }

/* Seta descer com conteúdo novo enquanto o utilizador está a ler acima. */
.erpie-scroll-new { animation: erpieScrollPulse 1.6s ease-in-out infinite; }

@keyframes erpieScrollPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.12); }
}
