/* Composição da Luna: busca por contexto, documento e resposta. */
.exp-card.exp-card--luna {
    border: 1px solid var(--exp-contorno);
    border-radius: 20px;
    padding: 26px;
    background: var(--exp-cartao);
}
.exp-card--luna .exp-title {
    color: #17181b;
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.45;
}
.exp-card--luna .exp-desc { color: #74747d; font-weight: 400; line-height: 1.65; }
.exp-vao--luna-ilustrada {
    position: relative;
    overflow: visible;
    pointer-events: none;
    margin-top: 32px;
    margin-bottom: 18px;
}
.luna-composicao {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30.2em;
    height: 34.2em;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.2em;
    padding: 1.1em 0;
    box-sizing: border-box;
    transform: translate(-50%, -50%);
    font-family: 'Poppins', sans-serif;
    font-size: min(calc(100cqw / 30.2), calc(100cqh / 34.2));
    color: #292a2e;
}
.luna-arquivo {
    width: 27em;
    height: 18.6em;
    flex-shrink: 0;
    box-sizing: border-box;
    overflow: hidden;
    border: 1px solid #e2e3e8;
    border-radius: 1.2em;
    background: #fff;
    box-shadow: 0 2px 5px #17182403, 0 7px 16px #17182404;
}
.luna-arquivo-previa {
    height: 12.4em;
    overflow: hidden;
    box-sizing: border-box;
    padding: 1.2em 2.2em 0;
    background: #f1f1f3;
    border-bottom: 1px solid #e4e5e9;
}
.luna-arquivo-folha {
    min-height: 14em;
    box-sizing: border-box;
    padding: 1.7em 1.8em;
    border: 1px solid #e0e2e7;
    border-radius: .2em .2em 0 0;
    background: #fff;
    box-shadow: 0 2px 8px #1c213008;
}
.luna-arquivo-titulo {
    display: block;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1.8em;
    line-height: 1.25;
    letter-spacing: -.035em;
    font-weight: 600;
    color: #303137;
}
.luna-arquivo-meta {
    margin: .85em 0 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
    font-size: .96em;
    line-height: 1.4;
    color: #888991;
}
.luna-arquivo-linhas { display: grid; gap: .5em; margin-top: 1.4em; }
.luna-arquivo-linhas i { display: block; height: .18em; border-radius: 1px; background: #e7e8ec; }
.luna-arquivo-linhas i:nth-child(3) { width: 76%; }
.luna-arquivo-linhas i:nth-child(4) { margin-top: .5em; }
.luna-arquivo-linhas i:nth-child(5) { width: 88%; }
.luna-arquivo-anexo {
    display: flex;
    align-items: center;
    gap: 1em;
    height: 6em;
    box-sizing: border-box;
    padding: 1em 1.2em;
}
.luna-arquivo-icone { width: 2.5em; height: 3.1em; flex-shrink: 0; }
.luna-arquivo-dados { display: grid; gap: .4em; flex: 1; min-width: 0; }
.luna-arquivo-dados strong { font-size: 1.25em; line-height: 1.2; font-weight: 500; color: #303139; }
.luna-arquivo-dados > span { font-size: 1em; line-height: 1.3; white-space: nowrap; color: #797a84; }
.luna-arquivo-download {
    display: grid;
    place-items: center;
    width: 2.7em;
    height: 2.7em;
    flex-shrink: 0;
    border: 1px solid #e0e1e7;
    border-radius: .8em;
    background: #fff;
    color: #666974;
}
.luna-arquivo-download svg { width: 1.8em; height: 1.8em; }
.luna-busca {
    width: min(31.4em, 100cqw);
    height: 4.6em;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 1.1em;
    padding: 0 1.7em;
    box-sizing: border-box;
    border: 1px solid #e1e2e7;
    border-radius: 1.2em;
    background: #fff;
    box-shadow: 0 2px 8px #17182404;
}
.luna-busca svg { width: 1.7em; height: 1.7em; flex-shrink: 0; color: #929297; }
.luna-busca span { min-width: 0; font-size: 1.22em; font-weight: 400; line-height: 1.35; letter-spacing: -.025em; white-space: normal; }
.luna-notificacao {
    width: 27em;
    height: 6.4em;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 1em;
    padding: 1em 1.7em;
    box-sizing: border-box;
    border: 1px solid #ebebef;
    border-radius: 1.2em;
    background: #fff;
}
.luna-notificacao > img { width: 3.4em; height: 3.4em; flex-shrink: 0; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 1px #ffffffb3; }
.luna-notificacao-conteudo { flex: 1; min-width: 0; }
.luna-notificacao-cabecalho { display: flex; align-items: baseline; justify-content: space-between; gap: 1em; }
.luna-notificacao-cabecalho strong { font-size: 1.13em; font-weight: 600; letter-spacing: -.015em; color: #313137; }
.luna-notificacao-cabecalho strong::after {
    content: '';
    display: inline-block;
    width: .42em;
    height: .42em;
    margin-left: .55em;
    border-radius: 50%;
    background: #F174BA;
    vertical-align: .15em;
}
.luna-notificacao-cabecalho > span { font-size: .9em; color: #8a8991; }
.luna-notificacao-conteudo p { margin: .3em 0 0; font-size: 1.16em; font-weight: 400; line-height: 1.45; letter-spacing: -.015em; color: #414148; }
@media (max-width: 960px) {
    .exp-card.exp-card--luna { padding: 24px 20px; }
    .exp-vao--luna-ilustrada { height: clamp(310px, 90vw, 370px); margin-bottom: 14px; }
}
@media (max-width: 600px) {
    .exp-card.exp-card--luna { border-radius: 16px; }
}
@media (prefers-reduced-motion: no-preference) {
    .is-vivo .luna-arquivo { animation: luna-revelar .7s cubic-bezier(.22,1,.36,1) both; }
    .is-vivo .luna-busca { animation: luna-revelar .65s cubic-bezier(.22,1,.36,1) both; }
    .is-vivo .luna-notificacao { animation: luna-revelar .75s .12s cubic-bezier(.22,1,.36,1) both; }
}
@keyframes luna-revelar {
    from { opacity: .4; transform: translateY(7px); }
    to { opacity: 1; transform: translateY(0); }
}
