/* custom.css - LimeSurvey Fruity Theme
   Remove bold and set black color on ALL answer/subquestion text
   Question text (.ls-label-question, .question-title) stays bold */

/* Adicionar faixa verde abaixo do cabeçalho  */
.navbar {
  border-bottom: 2px solid #008A45 !important; 
}

/* 1. Array column headers (answer options) */
.ls-answers .ls-heading th,
.ls-answers .ls-heading th * {
    font-weight: normal !important;
    color: #000000 !important;
}

/* 2. Array row labels - subquestion labels like "Altura", "Largura" */
.answertext,
th.answertext,
td.answertext,
.answertext * {
    font-weight: normal !important;
    color: #000000 !important;
}

/* 3. Subquestion labels in Multiple short text questions */
.question-item label,
.question-item label * {
    font-weight: normal !important;
    color: #000000 !important;
}

/* 4. Answer option labels (radio/checkbox) */
.answer-item label,
.radio-item label,
.checkbox-item label,
.answer-item label *,
.radio-item label *,
.checkbox-item label * {
    font-weight: normal !important;
    color: #000000 !important;
}

/* 5. Dropdown options */
.ls-answers option,
select.form-control {
    font-weight: normal !important;
    color: #000000 !important;
}

/* 6. Small-screen visibility labels in arrays */
.ls-label-xs-visibility,
.ls-label-xs-visibility * {
    font-weight: normal !important;
    color: #000000 !important;
}

/* 7. Catch-all: any label inside subquestion lists */
.subquestions-list label,
.subquestions-list label * {
    font-weight: normal !important;
    color: #000000 !important;
}

/* IPPUC Simplified Footer - LimeSurvey Fruity Theme */

.ippuc-footer {
    background: #ffffff !important;
    border-top: 1px solid #e0e0e0 !important;
    padding: 30px 0 !important;
    width: 100% !important;
    clear: both !important;
    font-size: 16px !important;
    color: #333 !important;
    line-height: 1.6 !important;
    box-sizing: border-box;
}

.ippuc-footer__institution {
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #222 !important;
    margin: 0 0 4px 0 !important;
}

.ippuc-footer__address {
    margin: 0 !important;
    color: #555 !important;
}

.ippuc-footer__contact-item {
    display: flex !important;
    align-items: center !important;
    font-size: 14px !important;
    gap: 8px !important;
    margin: 0 0 6px 0 !important;
}

.ippuc-footer__contact-item:last-child {
    margin-bottom: 0 !important;
}

.ippuc-footer__icon {
    flex-shrink: 0 !important;
    color: #666 !important;
    width: 16px !important;
    height: 16px !important;
}

.ippuc-footer a {
    color: #333 !important;
    text-decoration: none !important;
}

.ippuc-footer a:hover {
    color: #000 !important;
    text-decoration: underline !important;
}

/* Desktop */
@media (min-width: 768px) {
    .ippuc-footer .col-sm-6:first-child {
        text-align: left !important;
    }

    .ippuc-footer .col-sm-6:last-child {
        text-align: right !important;
    }

    .ippuc-footer__contact-item {
        justify-content: flex-end !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .ippuc-footer .col-xs-12 {
        text-align: center !important;
        margin-bottom: 20px !important;
    }

    .ippuc-footer .col-xs-12:last-child {
        margin-bottom: 0 !important;
    }

    .ippuc-footer__contact-item {
        justify-content: center !important;
    }
}
/* =============================================================================
   custom.css — LimeSurvey Tema Fruity TwentyThree
   -----------------------------------------------------------------------------
   Objetivo:
     Substituir TODAS as instâncias da cor verde claro padrão (#14AE5C) pelo
     verde escuro corporativo (#003B1F) em todos os elementos do tema.

   Tema alvo: fruity_twentythree (LimeSurvey)
   Arquivo: custom.css (carregado após o CSS compilado do Bootstrap 5 e do tema)

   Paleta de cores aplicada:
     - Cor primária:           #003B1F
     - Primária hover:         #005028
     - Primária active:        #002815
     - Primária RGB:           0, 59, 31
     - Fundo sutil (subtle):   #d4e4db
     - Borda sutil (subtle):   #a8c9b8
     - Texto ênfase:           #002815
     - Cor de link:            #003B1F
     - Link hover:             #005028

   Cor original substituída: #14AE5C
   ============================================================================= */

/* =============================================================================
   1. Bootstrap 5 — Variáveis CSS
   ============================================================================= */

:root {
  --bs-primary: #003B1F;
  --bs-primary-rgb: 0, 59, 31;
  --bs-link-color: #003B1F;
  --bs-link-hover-color: #005028;
  --bs-link-color-rgb: 0, 59, 31;
  --bs-link-hover-color-rgb: 0, 80, 40;
  --bs-link-underline: #003B1F;
  --bs-link-hover-underline: #005028;

  --bs-primary-bg-subtle: #d4e4db;
  --bs-primary-border-subtle: #a8c9b8;
  --bs-primary-text-emphasis: #002815;

  --bs-primary-hover-bg: #005028;
  --bs-primary-hover-border: #005028;
  --bs-primary-active-bg: #002815;
  --bs-primary-active-border: #002815;
  --bs-primary-disabled-bg: #003B1F;
  --bs-primary-disabled-border: #003B1F;

  --bs-emphasis-color: #002815;
}

/* =============================================================================
   2. Botões — .btn-primary
   ============================================================================= */

.fruity_twentythree .btn-primary,
.fruity_twentythree .btn-primary:active,
.fruity_twentythree .btn-primary.active {
  background-color: #003B1F !important;
  border-color: #003B1F !important;
  color: #ffffff !important;
}

.fruity_twentythree .btn-primary:hover {
  background-color: #005028 !important;
  border-color: #005028 !important;
  color: #ffffff !important;
}

.fruity_twentythree .btn-primary:focus,
.fruity_twentythree .btn-primary.focus {
  background-color: #003B1F !important;
  border-color: #005028 !important;
  color: #ffffff !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.35) !important;
}

.fruity_twentythree .btn-primary:active:focus,
.fruity_twentythree .btn-primary.active:focus {
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.35) !important;
}

.fruity_twentythree .btn-primary:disabled,
.fruity_twentythree .btn-primary.disabled {
  background-color: #003B1F !important;
  border-color: #003B1F !important;
  color: #ffffff !important;
  opacity: 0.65 !important;
}

/* =============================================================================
   3. Barra de Progresso
   ============================================================================= */

.fruity_twentythree .progress-bar {
  background-color: #003B1F !important;
}

.fruity_twentythree .progress {
  background-color: #d4e4db !important;
}

/* =============================================================================
   4. Botões de Rádio (estado selecionado)
   ============================================================================= */

.fruity_twentythree .radio-item input[type=radio]:checked + label::after {
  background-color: #003B1F !important;
}

.fruity_twentythree .radio-item input[type=radio]:checked + label::before {
  border-color: #003B1F !important;
}

.fruity_twentythree .radio-item label::before {
  border-color: #a8c9b8 !important;
}

/* =============================================================================
   5. Caixas de Seleção (estado selecionado)
   ============================================================================= */

.fruity_twentythree .checkbox-item input[type=checkbox]:checked + label::after {
  color: #003B1F !important;
}

.fruity_twentythree .checkbox-item input[type=checkbox]:checked + label::before {
  border-color: #003B1F !important;
  background-color: #003B1F !important;
}

.fruity_twentythree .checkbox-item label::before {
  border-color: #a8c9b8 !important;
}

/* =============================================================================
   6. Alertas
   ============================================================================= */

.fruity_twentythree .alert-primary {
  background-color: #d4e4db !important;
  border-color: #a8c9b8 !important;
  color: #002815 !important;
}

.fruity_twentythree .alert-success {
  background-color: #d4e4db !important;
  border-color: #a8c9b8 !important;
  color: #002815 !important;
}

.fruity_twentythree .alert-info {
  background-color: #d4e4db !important;
  border-color: #a8c9b8 !important;
  color: #002815 !important;
}

/* =============================================================================
   7. Texto de Ajuda / Dicas
   ============================================================================= */

.fruity_twentythree .question-help-container,
.fruity_twentythree .help-block,
.fruity_twentythree .text-info,
.fruity_twentythree .hint-text,
.fruity_twentythree .questionhelp,
.fruity_twentythree .ls-question-help,
.fruity_twentythree .question-valid-container,
.fruity_twentythree .em_default,
.fruity_twentythree .em_num_answers {
  color: #000000 !important;
}

/* =============================================================================
   9. Links
   ============================================================================= */

.fruity_twentythree a {
  color: #003B1F !important;
}

.fruity_twentythree a:hover {
  color: #005028 !important;
}

/* =============================================================================
   10. Controles de Formulário (estado focus)
   ============================================================================= */

.fruity_twentythree .form-control:focus {
  border-color: #003B1F !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.25) !important;
}

.fruity_twentythree .form-select:focus {
  border-color: #003B1F !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.25) !important;
}

.fruity_twentythree input:focus,
.fruity_twentythree textarea:focus {
  border-color: #003B1F !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.25) !important;
}

/* =============================================================================
   11. Indicadores do Carrossel
   ============================================================================= */

.fruity_twentythree #carousel-example-generic .carousel-indicators li {
  border-color: #003B1F !important;
}

.fruity_twentythree #carousel-example-generic .carousel-indicators li.active {
  background-color: #003B1F !important;
}

/* =============================================================================
   12. Totais Numéricos (numeric-multi)
   ============================================================================= */

.fruity_twentythree .numeric-multi .ls-group-total-separator hr {
  border-color: #003B1F !important;
}

.fruity_twentythree .numeric-multi .ls-group-total .control-label {
  color: #003B1F !important;
}

.fruity_twentythree .numeric-multi .dynamic-total.text-success {
  color: #003B1F !important;
}

/* =============================================================================
   13. Estados de Sucesso (has-success)
   ============================================================================= */

.fruity_twentythree .has-success .help-block,
.fruity_twentythree .has-success .control-label,
.fruity_twentythree .has-success .radio,
.fruity_twentythree .has-success .checkbox,
.fruity_twentythree .has-success .radio-inline,
.fruity_twentythree .has-success .checkbox-inline {
  color: #003B1F !important;
}

/* =============================================================================
   14. Animações de Pré-carregamento (preload)
   ============================================================================= */

@keyframes preload-show-1 {
  from { background-color: rgba(0, 59, 31, 0); }
  to { background-color: rgba(0, 59, 31, 0.35); }
}

@keyframes preload-show-2 {
  from { background-color: rgba(0, 59, 31, 0); }
  to { background-color: rgba(0, 59, 31, 0.35); }
}

@keyframes preload-show-3 {
  from { background-color: rgba(0, 59, 31, 0); }
  to { background-color: rgba(0, 59, 31, 0.35); }
}

@keyframes preload-hide-1 {
  from { background-color: rgba(0, 59, 31, 0.35); }
  to { background-color: rgba(0, 59, 31, 0); }
}

@keyframes preload-hide-2 {
  from { background-color: rgba(0, 59, 31, 0.35); }
  to { background-color: rgba(0, 59, 31, 0); }
}

@keyframes preload-hide-3 {
  from { background-color: rgba(0, 59, 31, 0.35); }
  to { background-color: rgba(0, 59, 31, 0); }
}

/* Aplicação das animações de pré-carregamento */
.fruity_twentythree .preload-show-1 { animation: preload-show-1 0.5s ease forwards; }
.fruity_twentythree .preload-show-2 { animation: preload-show-2 0.5s ease forwards; }
.fruity_twentythree .preload-show-3 { animation: preload-show-3 0.5s ease forwards; }
.fruity_twentythree .preload-hide-1 { animation: preload-hide-1 0.5s ease forwards; }
.fruity_twentythree .preload-hide-2 { animation: preload-hide-2 0.5s ease forwards; }
.fruity_twentythree .preload-hide-3 { animation: preload-hide-3 0.5s ease forwards; }

/* =============================================================================
   15. Texto e Fundo de Sucesso
   ============================================================================= */

.fruity_twentythree .text-success {
  color: #003B1F !important;
}

.fruity_twentythree .bg-success {
  background-color: #003B1F !important;
}

/* =============================================================================
   16. Dropdown / Select (estado focus)
   ============================================================================= */

.fruity_twentythree .form-select:focus {
  border-color: #003B1F !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.25) !important;
}

/* =============================================================================
   17. Botões de Navegação
   ============================================================================= */

.fruity_twentythree .navigator .btn-primary,
.fruity_twentythree #navigator-button {
  background-color: #003B1F !important;
  border-color: #003B1F !important;
  color: #ffffff !important;
}

.fruity_twentythree .navigator .btn-primary:hover,
.fruity_twentythree #navigator-button:hover {
  background-color: #005028 !important;
  border-color: #005028 !important;
  color: #ffffff !important;
}

.fruity_twentythree .navigator .btn-primary:focus,
.fruity_twentythree #navigator-button:focus {
  background-color: #003B1F !important;
  border-color: #005028 !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.35) !important;
}

/* =============================================================================
   18. Botões Sim/Não e Gênero
   ============================================================================= */

.fruity_twentythree .button-item .btn-primary {
  background-color: #003B1F !important;
  border-color: #003B1F !important;
  color: #ffffff !important;
}

.fruity_twentythree .button-item .btn-primary.active,
.fruity_twentythree .button-item .btn-primary:active {
  background-color: #002815 !important;
  border-color: #002815 !important;
  color: #ffffff !important;
}

.fruity_twentythree .button-item .btn-primary:hover {
  background-color: #005028 !important;
  border-color: #005028 !important;
  color: #ffffff !important;
}

/* =============================================================================
   19. Badge Primário
   ============================================================================= */

.fruity_twentythree .badge.bg-primary {
  background-color: #003B1F !important;
  color: #ffffff !important;
}

/* =============================================================================
   20. Item Ativo em List Group
   ============================================================================= */

.fruity_twentythree .list-group-item.active {
  background-color: #003B1F !important;
  border-color: #003B1F !important;
  color: #ffffff !important;
}

.fruity_twentythree .list-group-item.active:hover {
  background-color: #005028 !important;
  border-color: #005028 !important;
}

/* =============================================================================
   21. Acordeão (Accordion)
   ============================================================================= */

.fruity_twentythree .accordion-button:not(.collapsed) {
  background-color: #d4e4db !important;
  color: #002815 !important;
}

.fruity_twentythree .accordion-button:not(.collapsed)::after {
  background-image: none !important;
}

.fruity_twentythree .accordion-button:focus {
  box-shadow: 0 0 0 0.25rem rgba(0, 59, 31, 0.25) !important;
  border-color: #003B1F !important;
}

/* =============================================================================
   22. Barra de Título do Questionário
   ============================================================================= */

.fruity_twentythree .title-bar-breadcrumb {
  box-shadow: 0 2px 4px rgba(0, 59, 31, 0.15) !important;
}

.fruity_twentythree .surveybar {
  box-shadow: 0 2px 4px rgba(0, 59, 31, 0.15) !important;
}

/* =============================================================================
   Fim do arquivo custom.css
   ============================================================================= */
/* ============================================================================= */
/* LimeSurvey Fruity TwentyThree — Número/Código inline + Asterisco no final   */
/* SOLUÇÃO CSS ONLY (sem JavaScript) — funciona mesmo se custom.js não carregar */
/* ----------------------------------------------------------------------------- */
/* ESTRATÉGIA:
/*  1) Forçar todos os filhos do contêiner do título da questão para inline,
/*     incluindo divs wrappers e tags <p>, para que número, código e texto
/*     fiquem na mesma linha.
/*  2) Esconder completamente o asterisco original (<i class="asterisk">).
/*  3) Recriar o asterisco no final do texto via ::after no elemento interno
/*     do texto da questão, estilizado como superscript vermelho.
/*  4) Usar seletores amplos baseados em prefixos de id/classes estáveis para
/*     funcionar independentemente dos nomes dinâmicos de classe.
/* ============================================================================= */

/* --- PARTE 1: Número e código na mesma linha do texto da questão --- */

/* 1. O contêiner do título da questão — usar flexbox para controle */
.fruity_twentythree [id^="question-text-container-"],
.fruity_twentythree .question-title-container {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
}

/* 2. TODOS os filhos diretos — inline */
.fruity_twentythree [id^="question-text-container-"] > *,
.fruity_twentythree .question-title-container > * {
    display: inline !important;
    flex: 0 1 auto !important;
}

/* 3. O asterisco original — esconder completamente */
.fruity_twentythree [id^="question-text-container-"] > .asterisk,
.fruity_twentythree [id^="question-text-container-"] > i.asterisk,
.fruity_twentythree [id^="question-text-container-"] > .ri-asterisk,
.fruity_twentythree .question-title-container > .asterisk,
.fruity_twentythree .question-title-container > i.asterisk,
.fruity_twentythree .question-title-container > .ri-asterisk {
    display: none !important;
}

/* 4. O div do texto da questão — inline */
.fruity_twentythree [id^="question-text-container-"] > div,
.fruity_twentythree .question-title-container > div {
    display: inline !important;
}

/* 5. O texto interno da questão — inline */
.fruity_twentythree [id^="ls-question-text-"],
.fruity_twentythree .ls-question-text {
    display: inline !important;
}

/* 6. Tags <p> dentro do texto — inline sem margem */
.fruity_twentythree [id^="ls-question-text-"] p,
.fruity_twentythree .ls-question-text p {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 7. Qualquer outro elemento dentro do texto — inline */
.fruity_twentythree [id^="ls-question-text-"] > *,
.fruity_twentythree .ls-question-text > * {
    display: inline !important;
}

/* --- PARTE 2: Asterisco no final do texto via ::after --- */

/* 8. Adicionar asterisco sobrescrito no final do texto da questão */
/*    Só em questões obrigatórias (que têm .mandatory no contêiner pai) */
.fruity_twentythree .mandatory [id^="ls-question-text-"]::after,
.fruity_twentythree .mandatory .ls-question-text::after {
    content: "*" !important;
    color: # B4030F !important;
    font-size: 0.7em !important;
    vertical-align: super !important;
    margin-left: 2px !important;
    font-weight: bold !important;
    line-height: 0 !important;
    display: inline !important;
}

/* 9. Fallback: se .mandatory não estiver no pai, tentar no contêiner da questão */
.fruity_twentythree .question-container.mandatory [id^="ls-question-text-"]::after,
.fruity_twentythree .question-container.mandatory .ls-question-text::after {
    content: "*" !important;
    color: #B4030F !important;
    font-size: 0.7em !important;
    vertical-align: super !important;
    margin-left: 2px !important;
    font-weight: bold !important;
    line-height: 0 !important;
    display: inline !important;
}

/* 10. Outro fallback: questões com classe .input-error também são obrigatórias */
.fruity_twentythree .mandatory.input-error [id^="ls-question-text-"]::after,
.fruity_twentythree .mandatory.input-error .ls-question-text::after {
    content: "*" !important;
    color: #B4030F !important;
    font-size: 0.7em !important;
    vertical-align: super !important;
    margin-left: 2px !important;
    font-weight: bold !important;
    line-height: 0 !important;
    display: inline !important;
}

/* 11. Garantir que spans de número e código tenham margem à direita */
.fruity_twentythree [id^="question-text-container-"] > span,
.fruity_twentythree .question-title-container > span {
    margin-right: 0.4em !important;
    display: inline !important;
}

/* 