/* ============================================================
   1. Tokens do próprio TEC, reescritos com o DESIGN-DNA.
   O plugin desenha tudo a partir destas variáveis — mexer aqui
   vale mais que cem regras brigando por especificidade.
   ============================================================ */
:root{
  --tec-color-text-primary:var(--texto-primario) !important;
  --tec-color-text-primary-light:var(--texto-secundario) !important;
  --tec-color-text-secondary:var(--texto-secundario) !important;
  --tec-color-text-disabled:var(--texto-secundario) !important;
  --tec-color-text-events-title:var(--texto-primario) !important;
  --tec-color-text-event-title:var(--texto-primario) !important;
  --tec-color-text-event-date:var(--acao) !important;
  --tec-color-text-secondary-event-date:var(--acao) !important;
  --tec-color-text-primary-emphasis:var(--texto-primario) !important;

  /* NÃO deixar transparente: o TEC usa esta cor como o TEXTO de botões sólidos.
     Transparente aqui apagou o rótulo "Encontre Eventos". */
  --tec-color-background:var(--fundo-base) !important;
  --tec-color-background-events:transparent !important;
  --tec-color-background-view-selector-list-item-hover:var(--fundo-elevado-2) !important;
  --tec-color-background-secondary:var(--fundo-elevado) !important;

  --tec-color-link-primary:var(--acao) !important;
  --tec-color-link-accent:var(--acao) !important;
  --tec-color-link-accent-hover:var(--acao-hover) !important;
  --tec-color-accent-primary:var(--acao) !important;
  --tec-color-accent-primary-hover:var(--acao-hover) !important;
  --tec-color-accent-primary-active:var(--acao-suave) !important;

  --tec-color-border-default:var(--linha) !important;
  --tec-color-border-secondary:var(--linha) !important;
  --tec-color-border-tertiary:var(--linha) !important;
  --tec-color-border-active:var(--acao) !important;

  --tec-color-button-primary:var(--acao) !important;
  --tec-color-button-primary-hover:var(--acao-hover) !important;
  --tec-color-button-primary-active:var(--acao-suave) !important;
  --tec-color-button-secondary-background:transparent !important;

  --tec-color-icon-primary:var(--texto-primario) !important;
  --tec-color-icon-active:var(--acao) !important;
  --tec-color-icon-focus:var(--acao) !important;

  --tec-font-family-sans-serif:var(--fonte-corpo) !important;
}

/* O cabeçalho fixo não pode cobrir o título da noite. */
body.tribe-events-page-template,
body.single-tribe_events,
body.post-type-archive-tribe_events{
  padding-top:calc(var(--header-total) + var(--e-7));
}
.tribe-events-page-template .site-footer{ margin-top:var(--e-12); }

/* ============================================================
   The Events Calendar no escuro do Novo Limoeiro.
   O TEC nasce com paleta clara; aqui ele passa a falar a língua
   do DESIGN-DNA. Nenhum valor solto: tudo vem das variáveis.
   ============================================================ */

.nl-pagina{
  padding-top:calc(var(--header-total) + var(--e-9));
  padding-bottom:var(--e-12);
}
.nl-pagina .container,
.tribe-events,
.tribe-common{
  width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);
}

/* --- texto e fundo --- */
.tribe-common,
.tribe-common *,
.tribe-events,
.tribe-events *{
  color:var(--texto-primario);
  font-family:var(--fonte-corpo);
}
.tribe-common .tribe-common-b2,
.tribe-common .tribe-common-b3,
.tribe-events-c-small-cta__price,
.tribe-events-calendar-list__event-description,
.tribe-events-schedule__datetime{
  color:var(--texto-secundario);
}
.tribe-events-single,
.tribe-events-pg-template,
.tribe-common--breakpoint-medium.tribe-events,
.tribe-events-view,
.tribe-events-calendar-list__event-row,
.tribe-events-header{
  background:transparent;
}

/* --- títulos --- */
.tribe-events-single-event-title,
.tribe-events-calendar-list__event-title,
.tribe-events-calendar-day__event-title,
.tribe-events-calendar-month__calendar-event-title{
  font-family:var(--fonte-display);
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:var(--tr-display);
  line-height:var(--lh-heading);
  color:var(--texto-primario);
}
.tribe-events-single-event-title{ font-size:clamp(32px,6vw,var(--fs-h1)); }

/* --- etiquetas de data --- */
.tribe-events-schedule,
.tribe-events-calendar-list__event-date-tag,
.tribe-events-calendar-list__event-datetime{
  font-family:var(--fonte-mono);
  letter-spacing:var(--tr-eyebrow);
  text-transform:uppercase;
  color:var(--acao);
}
.tribe-events-cost{ color:var(--acao); font-weight:700; }

/* --- links --- */
.tribe-events a,
.tribe-common a{ color:var(--acao); text-decoration:none; }
.tribe-events a:hover,
.tribe-common a:hover{ color:var(--acao-hover); text-decoration:underline; }
.tribe-events a:focus-visible,
.tribe-common a:focus-visible,
.tribe-events button:focus-visible{
  outline:2px solid var(--foco); outline-offset:3px; border-radius:var(--r-micro);
}

/* --- botões e controles --- */
.tribe-common-c-btn,
.tribe-common-c-btn-border,
.tribe-events-c-subscribe-dropdown__button{
  background:transparent;
  border:1px solid var(--linha);
  color:var(--texto-primario);
  border-radius:var(--r-controle);
  min-height:44px;
  padding-inline:var(--e-5);
  transition:border-color var(--d-micro) var(--ease-padrao), color var(--d-micro) var(--ease-padrao);
}
.tribe-common-c-btn:hover,
.tribe-common-c-btn-border:hover,
.tribe-events-c-subscribe-dropdown__button:hover{
  border-color:var(--acao); color:var(--acao);
}
.tribe-events-c-view-selector__button,
.tribe-events-c-top-bar__datepicker-button,
.tribe-events-c-nav__prev,
.tribe-events-c-nav__next,
.tribe-events-c-top-bar__today-button{
  color:var(--texto-primario);
  background:transparent;
  min-height:44px;
}
.tribe-events-c-view-selector__list-item-link--active,
.tribe-events-c-view-selector__list-item-text{ color:var(--acao); }

/* --- caixas e divisórias --- */
.tribe-events-single hr,
.tribe-events-event-meta,
.tribe-events-calendar-list__event-row,
.tribe-events-c-top-bar,
.tribe-events-header__events-bar{
  border-color:var(--linha) !important;
}
.tribe-events-event-meta{
  background:var(--fundo-elevado);
  border:1px solid var(--linha);
  border-radius:var(--r-midia);
  padding:var(--e-6);
}
.tribe-events-event-meta .tribe-events-meta-group dt{
  font-family:var(--fonte-mono);
  font-size:var(--fs-eyebrow);
  letter-spacing:var(--tr-eyebrow);
  text-transform:uppercase;
  color:var(--acao);
}

/* --- campo de busca --- */
.tribe-events-c-search__input,
.tribe-common input[type="text"],
.tribe-common input[type="search"]{
  background:var(--fundo-elevado-2);
  border:1px solid var(--linha);
  color:var(--texto-primario);
  border-radius:var(--r-controle);
  min-height:44px;
}
.tribe-events-c-search__input::placeholder{ color:var(--texto-secundario); }

/* --- line-up na página da noite --- */
.nl-evento-lineup{
  margin-top:var(--e-5);
  font-family:var(--fonte-mono);
  font-size:var(--fs-small);
  letter-spacing:var(--tr-body);
  color:var(--texto-secundario);
}

/* --- botão de busca: era limão sobre limão, texto invisível --- */
.tribe-events-c-search__button,
.tribe-events-c-events-bar__search-button,
.tribe-common-c-btn--primary{
  background:var(--acao);
  color:var(--texto-inverso);
  border:0;
  border-radius:var(--r-controle);
  font-weight:700;
  letter-spacing:var(--tr-botao);
  min-height:44px;
  padding-inline:var(--e-6);
}
.tribe-events-c-search__button:hover,
.tribe-common-c-btn--primary:hover{ background:var(--acao-hover); color:var(--texto-inverso); }

/* --- título da noite na lista: Anton, como em toda a casa --- */
.tribe-events-calendar-list__event-title a,
.tribe-events-calendar-day__event-title a,
.tribe-events-calendar-month__calendar-event-title a{
  font-family:var(--fonte-display);
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:var(--tr-display);
  color:var(--texto-primario);
}
.tribe-events-calendar-list__event-title a:hover{ color:var(--acao); text-decoration:none; }

/* --- selo de destaque --- */
.tribe-events-calendar-list__event-featured-text,
.tribe-events-calendar-month__calendar-event-featured-text{
  font-family:var(--fonte-mono);
  font-size:var(--fs-eyebrow);
  letter-spacing:var(--tr-eyebrow);
  text-transform:uppercase;
  color:var(--acao);
}


/* ============================================================
   Correções da rodada 1 do QA pós-implantação (18/09/2026)
   ============================================================ */

/* Alvo de toque: as caixas de consentimento tinham 18x18 — abaixo do mínimo
   AA de 24px. Subimos para 24 e paramos aí: os 44px de AAA empurravam a S3 em
   39px e o rodapé em 35px, quebrando a fidelidade ao que a cliente aprovou.
   Decisão registrada: cumprir AA e preservar o desenho. */
.consent input[type="checkbox"],
.footer-mini input[type="checkbox"]{
  width:24px; height:24px; min-width:24px; min-height:24px;
  accent-color:var(--acao);
}
.consent{ display:flex; align-items:flex-start; gap:var(--e-3); }

.site-footer .micro a,
.footer-legal a{ display:inline-block; min-height:24px; }

/* Noite sem flyer não pode encolher a fita: a caixa guarda a proporção. */
.noite .noite-flyer{ aspect-ratio:800/419; }
.noite:not(:has(.noite-flyer))::before{
  content:""; display:block; aspect-ratio:800/419;
  background:var(--fundo-elevado-2);
  border-bottom:1px solid var(--linha);
}

/* Fita com uma noite só: as setas não navegam para lugar nenhum. */
.marquise[data-noites="0"] .rail-controles,
.marquise[data-noites="1"] .rail-controles{ display:none; }


/* Formulário da lista: o "(opcional)" ao lado do rótulo do WhatsApp.
   O consentimento de WhatsApp deixou de ser caixa separada na 0.6.3 — ele é o
   ato de preencher o campo, e o texto logo abaixo dele diz isso. */
.lista-form .campo label .opcional {
  font-weight: 400;
  opacity: .62;
  text-transform: none;
  letter-spacing: 0;
}
.lista-form .campo .micro#ajudaTel {
  margin-top: 6px;
}
