.cm-dialog { position: relative; padding: 1.5rem; max-width: 48rem; }
.cm-dialog > p, .cm-status { color: var(--muted, #7c8797); line-height: 1.5; }
.cm-busca { display: grid; grid-template-columns: minmax(12rem, 1fr) 8rem auto; gap: .75rem; align-items: end; margin: 1rem 0; }
.cm-busca label, .cm-candidata { display: flex; flex-direction: column; gap: .5rem; }
.cm-busca input, .cm-busca select { width: 100%; padding: .7rem; border: 1px solid var(--line, #334155); border-radius: .6rem; background: var(--panel, #121d31); color: inherit; }
.cm-resultados { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.cm-candidata { border: 1px solid var(--line, #334155); border-radius: .8rem; padding: .85rem; overflow-wrap: anywhere; }
.cm-candidata img { width: 100%; height: 10rem; object-fit: cover; border-radius: .5rem; }
.cm-candidata--video-publico img { object-fit: contain; background: var(--panel, #121d31); }
.cm-video-aviso { line-height: 1.5; }
.cm-video video { width: 100%; max-height: 15rem; }
.cm-candidata small { color: var(--muted, #7c8797); }
.cm-links { display: flex; gap: .8rem; font-size: .85rem; }
.cm-candidata .cm-direito { display: flex; flex-direction: row; gap: .5rem; align-items: start; font-size: .85rem; line-height: 1.4; }
.cm-candidata button { margin-top: auto; }
.cm-voltar { margin-top: 1rem; }
@media (max-width: 760px) { .cm-busca, .cm-resultados { grid-template-columns: 1fr; } .cm-dialog { padding: 1rem; } }
