/* acampada.tech · espaço dos GT (sem dependências; CSP style-src 'self'). Mesmas cores do intercom. */
:root { --fundo: #0b0b0b; --texto: #f3efe8; --cinza: #9a948c; --acento: #f2b705; --vermelho: #d4212a; --vermelho-vivo: #ff3b3b;
  --verde: #2fbf71; --linha: #2a2a2a; --caixa: #161616; }
* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
[hidden] { display: none !important; }
html, body { margin: 0; background: var(--fundo); color: var(--texto); font-family: -apple-system, "Helvetica Neue", Arial, sans-serif; }
main { max-width: 760px; margin: 0 auto; padding: 12px 16px calc(32px + env(safe-area-inset-bottom)); }
.topo { display: flex; align-items: center; gap: 12px; padding: 6px 0 10px; }
.marca { background: var(--acento); color: #000; font-weight: 800; letter-spacing: .08em; padding: 4px 10px; white-space: nowrap; }
.estado { flex: 1; font-size: 14px; color: var(--cinza); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
h1 { font-size: 24px; margin: 14px 0 8px; overflow-wrap: anywhere; } h2 { font-size: 17px; margin: 22px 0 8px; }
p, li { line-height: 1.5; }
a { color: #fff; }
button { font-family: inherit; cursor: pointer; }
button:disabled { opacity: .5; cursor: default; }
.botao { width: 100%; margin: 14px 0 10px; padding: 18px 0; font-size: 19px; font-weight: 800; letter-spacing: .06em;
  border: 0; background: var(--acento); color: #000; border-radius: 6px; }
.secundario { display: block; width: 100%; margin-top: 10px; background: transparent; color: var(--texto); border: 1px solid #555;
  border-radius: 6px; padding: 12px 14px; font-size: 15px; }
.secundario.pequeno { display: inline-block; width: auto; padding: 8px 12px; font-size: 14px; margin: 2px 4px 2px 0; }
.ligeiro { background: none; border: 0; color: var(--cinza); font-size: 14px; padding: 8px 0; text-decoration: underline; }
.ligeiro.perigo { color: #ff8a8a; }
.campo { display: block; margin: 12px 0; font-size: 14px; color: #ddd8d0; }
.campo input, .campo select, .campo textarea, .ferramentas input, .botoes input { display: block; width: 100%; margin-top: 6px;
  font-size: 17px; padding: 10px; background: var(--caixa); color: var(--texto); border: 1px solid var(--linha); border-radius: 4px;
  font-family: inherit; }
.campo textarea { min-height: 12em; line-height: 1.45; resize: vertical; }
.regras { font-size: 14px; color: #ddd8d0; padding-left: 18px; }
.erro { background: #3a0d0f; border-left: 3px solid var(--vermelho-vivo); padding: 10px; font-size: 14px; }
.aviso { font-size: 14px; color: #ffcf6b; }
.lembrete { font-size: 13px; color: var(--cinza); line-height: 1.45; }
.msg { min-height: 1.4em; font-size: 14px; color: var(--verde); margin: 4px 0; }
.msg.erro { color: var(--texto); }
.msg:empty { padding: 0; border: 0; background: none; }
/* separadores das áreas */
.separadores { display: flex; gap: 8px; margin: 4px 0 8px; flex-wrap: wrap; }
.separador { flex: 1; min-width: 92px; padding: 11px 6px; font-size: 15px; font-weight: 700; background: var(--caixa); color: var(--cinza);
  border: 1px solid var(--linha); border-radius: 6px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.separador.activo { background: var(--texto); color: #000; border-color: var(--texto); }
/* lista */
.ferramentas { display: flex; gap: 8px; align-items: center; margin: 8px 0 4px; }
.ferramentas input { margin: 0; flex: 1; }
.ferramentas .secundario.pequeno { margin: 0; white-space: nowrap; padding: 11px 12px; }
.caixa { display: inline-flex; gap: 6px; align-items: center; font-size: 13px; color: var(--cinza); margin: 6px 0; }
.lista { list-style: none; padding: 0; margin: 8px 0; }
.lista > li { margin: 0 0 8px; }
.item { display: block; width: 100%; text-align: left; background: var(--caixa); color: var(--texto); border: 1px solid var(--linha);
  border-radius: 6px; padding: 12px; font-size: 16px; }
.item strong { display: block; overflow-wrap: anywhere; }
.item .meta { display: block; font-size: 13px; color: var(--cinza); margin-top: 3px; }
.item .previa-texto { display: block; font-size: 14px; color: #c9c3ba; margin-top: 6px; overflow: hidden; text-overflow: ellipsis;
  white-space: nowrap; }
.item.arquivado { opacity: .6; }
/* documento */
.corpo { font-size: 16px; line-height: 1.6; overflow-wrap: anywhere; }
.corpo h2 { font-size: 20px; } .corpo h3 { font-size: 17px; } .corpo h4 { font-size: 15px; }
.corpo blockquote { margin: 10px 0; padding: 4px 12px; border-left: 3px solid var(--acento); color: #ddd8d0; }
.corpo pre { background: var(--caixa); padding: 10px; overflow-x: auto; font-size: 13px; white-space: pre-wrap; }
.corpo code { font-family: ui-monospace, Menlo, monospace; font-size: .9em; background: var(--caixa); padding: 1px 4px; }
.corpo pre code { padding: 0; }
.corpo hr { border: 0; border-top: 1px solid var(--linha); margin: 18px 0; }
.previa { border: 1px dashed #555; padding: 4px 12px; margin: 10px 0; border-radius: 4px; }
.botoes { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 14px 0; }
.botoes input { flex: 1 1 100%; margin: 0 0 4px; font-size: 15px; }
#historico, #propor { border-top: 1px solid var(--linha); margin-top: 10px; }
/* revisão */
.proposta { border: 1px solid var(--linha); border-radius: 6px; padding: 10px 12px; }
.proposta h3 { margin: 0 0 4px; font-size: 17px; }
.proposta.publicada { border-color: #1f5e3c; }
.proposta.recusada { opacity: .6; }
.proposta .corpo { font-size: 15px; max-height: 22em; overflow-y: auto; }
.rodape { margin-top: 36px; border-top: 1px solid var(--linha); padding-top: 10px; }
@media (min-width: 700px) { .separador { flex: 0 1 auto; padding: 10px 18px; } }

/* specs/31: tipos de publicação, verificação antes de aprovar, publicados */
.verificar { margin: 10px 0; padding: 10px 12px; border: 1px solid #6f6359; border-radius: 6px; }
.verificar label { display: flex; gap: 8px; align-items: flex-start; margin: 6px 0; font-size: 14px; color: #ddd8d0; }
.verificar input { margin-top: 3px; }
.proposta .campos { font-size: 13px; color: #ffcf6b; }
.proposta.retirada { opacity: 0.6; }
