/* ===== Tema Zotra para o Klaro (banner/modal de consentimento) ===== */
.klaro {
  --font-family: 'Space Grotesk', 'Inter', system-ui, -apple-system, sans-serif;
  --title-font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif;
  --border-radius: 10px;
  --purple1: #6E51C5;
  --purple2: #5f43b3;
  --purple3: #42386C;
  --button-text-color: #ffffff;
}

/* Containers: fundo claro, texto escuro, cantos arredondados, fonte Space Grotesk */
.klaro .cookie-notice,
.klaro .cookie-modal .cm-modal,
.klaro .context-notice {
  background-color: #ffffff !important;
  color: #0F172A !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  border-radius: 10px !important;
  font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif !important;
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.18) !important;
}

/* Títulos em texto escuro */
.klaro .cookie-modal .cm-header h1,
.klaro .cookie-modal .cm-list-title,
.klaro .cookie-notice .cn-body strong {
  color: #0F172A !important;
  font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif !important;
}

/* Título do banner (roxo em destaque) */
.klaro .cookie-notice .cn-body strong.cn-title {
  display: block;
  color: #6E51C5 !important;
  font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif !important;
  font-weight: 700;
  font-size: 1.05em;
  margin-bottom: 8px;
}

/* Corpo do texto */
.klaro .cookie-notice .cn-body,
.klaro .cookie-modal .cm-body,
.klaro .cookie-modal .cm-header,
.klaro .cookie-modal .cm-footer {
  color: #0F172A !important;
}

/* Descrições de serviço e "powered by" em cinza suave */
.klaro .cookie-modal .cm-list-description,
.klaro .cm-powered-by {
  color: #64748B !important;
}

/* Links em roxo da marca */
.klaro a,
.klaro .cm-link,
.klaro .cn-learn-more {
  color: #6E51C5 !important;
  text-decoration: none;
}
.klaro a:hover { text-decoration: underline; }

/* Botões — base */
.klaro .cm-btn {
  border-radius: 10px !important;
  font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif !important;
  font-weight: 600 !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease;
}

/* Aceitar (todos) — roxo sólido, texto branco */
.klaro .cm-btn.cm-btn-success,
.klaro .cm-btn.cm-btn-accept-all {
  background-color: #6E51C5 !important;
  color: #ffffff !important;
  border: 1px solid #6E51C5 !important;
}
.klaro .cm-btn.cm-btn-success:hover,
.klaro .cm-btn.cm-btn-accept-all:hover {
  background-color: #5f43b3 !important;
  border-color: #5f43b3 !important;
}

/* Salvar escolhas / aceitar selecionados — roxo contornado */
.klaro .cm-btn.cm-btn-accept {
  background-color: transparent !important;
  color: #6E51C5 !important;
  border: 1px solid #6E51C5 !important;
}
.klaro .cm-btn.cm-btn-accept:hover {
  background-color: rgba(110, 81, 197, 0.10) !important;
}

/* Recusar — ghost neutro */
.klaro .cm-btn.cm-btn-decline,
.klaro .cm-btn.cm-btn-danger {
  background-color: transparent !important;
  color: #64748B !important;
  border: 1px solid rgba(15, 23, 42, 0.16) !important;
}
.klaro .cm-btn.cm-btn-decline:hover,
.klaro .cm-btn.cm-btn-danger:hover {
  border-color: #6E51C5 !important;
  color: #6E51C5 !important;
}

/* Toggles ativos em roxo da marca */
.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider,
.klaro .context-notice .cm-list-input:checked + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
  background-color: #6E51C5 !important;
}
