/* estilos do módulo comunidade (prefixo cm-) */

/* Visitante sem login */
.cm-visitante{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:var(--cartao);border:1px solid var(--borda);border-radius:20px;padding:14px 18px;margin-bottom:24px;font-size:15px}
.cm-visitante .acoes{flex-shrink:0}

/* Offline */
.cm-offline .cartao{align-items:flex-start;text-align:left}
.cm-offline-ic{width:64px;height:64px;border-radius:32px;background:var(--menta);border:1px solid var(--menta-borda);color:var(--esmeralda-texto);display:flex;align-items:center;justify-content:center}

/* App */
.cm-app-topo{flex-direction:row;align-items:center;gap:20px}
.cm-app-icone{border-radius:18px;flex-shrink:0;box-shadow:0 8px 24px -8px rgba(16,185,129,.5)}
.cm-passos{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px;font-size:16px}
.cm-ic-ios{display:inline-flex;vertical-align:-3px;color:#0A84FF}

/* Abas em pílula */
.cm-abas{display:inline-flex;gap:4px;padding:4px;background:var(--cartao);border:1px solid var(--borda);border-radius:999px;flex-wrap:wrap}
.cm-abas a{padding:8px 16px;border-radius:999px;text-decoration:none;color:var(--suave);font-size:15px;font-weight:500}
.cm-abas a:hover{color:var(--titulo)}
.cm-abas a.ativo{background:#0A0A0A;color:#FFF}

/* Ranking */
.cm-eu{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.cm-eu-dados{display:flex;flex-wrap:wrap;gap:8px 20px;color:#A3A3A3;font-size:15px}
.cm-eu-dados b{color:#FFF;font-weight:600}
.cm-ranking th.num{text-align:right}
.cm-ranking .cm-pos{width:56px;font-weight:600;color:var(--titulo)}
.cm-podio{display:inline-flex;width:28px;height:28px;border-radius:14px;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#FFF;background:#0A0A0A}
.cm-podio.p1{background:var(--esmeralda)}
.cm-podio.p2{background:#34D399;color:#064E3B}
.cm-podio.p3{background:#A7F3D0;color:#064E3B}
.cm-ranking tr.cm-voce td{background:var(--menta);font-weight:500}
.cm-separador td{text-align:center;color:var(--suave);padding:4px}
.cm-regras{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:15px}
@media (max-width:600px){.cm-so-pc{display:none}.tabela th,.tabela td{padding:12px 12px}}

/* Conquistas */
.cm-medalhas{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.cm-medalha{align-items:center;text-align:center;gap:8px;padding:22px 18px}
.cm-medalha h3{font-size:16px}
.cm-medalha:not(.ganha) h3{color:var(--suave)}
.cm-medalha.ganha{border-color:var(--menta-borda)}
.cm-data{color:var(--esmeralda-texto);font-weight:500}
@media (max-width:600px){.cm-medalhas{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cm-medalha{padding:16px 10px}.cm-medalha .medalha{width:64px;height:64px}}
.cm-meds-mini{display:flex;gap:6px}

/* Início */
.cm-tarefa-mini{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--borda);text-decoration:none;color:inherit}
.cm-tarefa-mini b{color:var(--titulo);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cm-tarefa-mini small{color:var(--suave);font-size:13px}

/* Comentários dos alunos */
.cm-coments{gap:16px}
.cm-novo{display:flex;flex-direction:column;gap:10px}
.cm-novo textarea{min-height:90px}
.cm-lista{display:flex;flex-direction:column}
.cm-com{padding:14px 0;border-top:1px solid var(--borda);display:flex;flex-direction:column;gap:6px}
.cm-com.filho{padding:12px 0 4px;border-top:none}
.cm-respostas{margin-left:18px;padding-left:16px;border-left:2px solid var(--borda)}
.cm-respostas:empty{display:none}
.cm-com-topo{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px}
.cm-com-topo b{color:var(--titulo);font-weight:600}
.cm-com-topo .suave{font-size:13px}
.cm-avatar{width:28px;height:28px;border-radius:14px;background:var(--menta);border:1px solid var(--menta-borda);color:var(--esmeralda-texto);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}
.cm-texto-com{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.55;color:var(--texto)}
.cm-com-acoes{display:flex;flex-wrap:wrap;gap:4px;margin-left:-8px}
.cm-acao{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 10px;border-radius:999px;border:none;background:none;font-family:var(--fonte);font-size:14px;color:var(--suave);cursor:pointer}
button.cm-acao:hover{background:rgba(23,23,23,.05);color:var(--titulo)}
.cm-acao.ativo{color:var(--esmeralda-texto)}
span.cm-acao{cursor:default}
.cm-responder{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.cm-responder textarea{min-height:70px}

/* Moderação */
.cm-mod{gap:10px}

/* Blog */
.cm-post-item{gap:8px}
.cm-post-item h2{font-size:22px}
.cm-ler{display:inline-flex;align-items:center;gap:6px;color:var(--esmeralda-texto);font-weight:500;font-size:15px}
.cm-capa,.cm-capa-mini{width:100%;border-radius:18px;border:1px solid var(--borda);object-fit:cover}
.cm-capa{max-height:420px;margin-bottom:20px}
.cm-capa-mini{max-height:220px}
.cm-artigo{max-width:760px}
.cm-artigo .conteudo{font-size:18px;line-height:1.75}
.cm-cta{margin-top:24px;gap:14px}
.cm-cta .btn-claro{border-color:#262626}
.cm-texto-claro{color:#D4D4D4}
.cm-texto-claro:hover{color:#FFF}
.cm-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.cm-editor textarea{min-height:480px;font-size:15px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.cm-editor #cm-previa{max-height:620px;overflow:auto}
@media (max-width:900px){.cm-editor{grid-template-columns:minmax(0,1fr)}.cm-editor textarea{min-height:300px}}

/* Turmas */
.cm-linha-form{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.cm-linha-form .campo{min-width:180px}
.cm-codigo-in{text-transform:uppercase;letter-spacing:.18em;font-weight:600}
.cm-codigo b{letter-spacing:.12em}
.cm-tarefa{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--borda)}
.cm-tarefa-acao{display:flex;align-items:center;gap:10px;flex-shrink:0}
@media (max-width:600px){.cm-tarefa{flex-wrap:wrap}.cm-tarefa-acao{width:100%;justify-content:space-between}}
.cm-criar>summary{list-style:none;cursor:pointer;display:inline-flex;margin-top:8px}
.cm-criar>summary::-webkit-details-marker{display:none}
.cm-multi{min-height:220px!important;padding:8px!important}
.cm-sem-borda{border:none;border-radius:0;max-width:100%;min-width:0;position:relative}
.cm-so-cel{display:none}
@media (max-width:600px){.cm-so-cel{display:inline}}
.cm-codigo,.cm-codigo b{font-size:34px!important;line-height:1.1}
.cm-mais{align-self:flex-start;margin-top:8px}
.lista-assuntos a .icone{width:38px;height:38px}
