/* Tipografia global — Plus Jakarta Sans em todo o projeto */
:root {
  --next-font: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --bs-body-font-family: var(--next-font);
  --bs-font-sans-serif: var(--next-font);
  /* Largura da área de conteúdo proporcional à tela (92vw), com teto de 90rem */
  --next-area-max: min(92vw, 90rem);
  --next-banner-ratio: 3.6 / 1;
  --next-banner-ratio-md: 2.4 / 1;
  --next-banner-ratio-sm: 16 / 9;
  --next-navbar-height: 4.75rem;
}

html,
body {
  font-family: var(--next-font) !important;
}

/* Herda a fonte global em todo o conteúdo (categorias, botões, cards, etc.) */
body *:not(i):not(.bi):not(.fa):not([class^="bi-"]):not([class*=" bi-"]):not([class^="fa-"]):not([class*=" fa-"]):not(.material-symbols-outlined) {
  font-family: inherit !important;
}

/* Garante ícones Bootstrap Icons / FA / Material */
.bi::before,
[class^="bi-"]::before,
[class*=" bi-"]::before {
  font-family: "bootstrap-icons" !important;
}

.fa::before,
[class^="fa-"]::before {
  font-family: FontAwesome !important;
}

.material-symbols-outlined {
  font-family: "Material Symbols Outlined" !important;
}



.container {
  max-width: var(--next-area-max) !important;
}

.next-skel {
  display: block;
  background-color: var(--bs-secondary-bg, #e9ecef);
  border-radius: var(--bs-border-radius, 0.375rem);
}
.next-skel-glow {
  animation: next-skel-pulse 1.5s ease-in-out infinite;
}
@keyframes next-skel-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.45; }
}
.next-skel-banner {
  width: 100%;
  aspect-ratio: var(--next-banner-ratio);
  min-height: 0;
}
@media (max-width: 991.98px) {
  .next-skel-banner {
    aspect-ratio: var(--next-banner-ratio-md);
  }
}
@media (max-width: 767.98px) {
  .next-skel-banner {
    aspect-ratio: var(--next-banner-ratio-sm);
  }
}
.next-skel-chip {
  width: 7.5rem;
  height: 5rem;
  border-radius: 0.5rem;
  flex-shrink: 0;
}
.next-skel-card-img {
  width: 100%;
  aspect-ratio: 1 / 1;
}
.next-skel-line {
  height: 0.75rem;
  margin-bottom: 0.4rem;
}
.next-skel-line.w-75 { width: 75%; }
.next-skel-line.w-50 { width: 50%; }
.next-skel-line.mb-0 { margin-bottom: 0; }
.next-skel-btn {
  height: 2rem;
  width: 100%;
  margin-top: 0.75rem;
}
.next-skel-meta-icon {
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 0.4rem;
  flex-shrink: 0;
}
.next-skel-search {
  height: 3.25rem;
  border-radius: 999px;
  width: 100%;
}

/* Card skeleton (Home + Evento + Organizador + Promoter + Seller) */
#appHome .next-skel-event-card,
#appEvento .next-skel-event-card,
#appOrganizador .next-skel-event-card,
#appPromoter .next-skel-event-card,
#appSeller .next-skel-event-card {
  height: 100%;
  overflow: hidden;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.1);
  background: #fff;
}
#appHome .next-skel-event-card .card-body,
#appEvento .next-skel-event-card .card-body,
#appOrganizador .next-skel-event-card .card-body,
#appPromoter .next-skel-event-card .card-body,
#appSeller .next-skel-event-card .card-body {
  padding: 0.875rem;
}
#appHome .next-skel-event-card .next-skel-meta-row,
#appEvento .next-skel-event-card .next-skel-meta-row,
#appOrganizador .next-skel-event-card .next-skel-meta-row,
#appPromoter .next-skel-event-card .next-skel-meta-row,
#appSeller .next-skel-event-card .next-skel-meta-row {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin-bottom: 0.55rem;
}
#appHome .next-skel-event-card .next-skel-meta-row .next-skel-line,
#appEvento .next-skel-event-card .next-skel-meta-row .next-skel-line,
#appOrganizador .next-skel-event-card .next-skel-meta-row .next-skel-line,
#appPromoter .next-skel-event-card .next-skel-meta-row .next-skel-line,
#appSeller .next-skel-event-card .next-skel-meta-row .next-skel-line {
  flex: 1 1 auto;
  height: 0.7rem;
}

/* Evita FOUC: não mostra conteúdo Vue até montar */
[v-cloak] {
  display: none !important;
}

/* Enquanto a home carrega: esconde footer (reforço; regra principal está no <head>) */
/* Global — chrome do shell oculto durante skeleton (next-page-loading) */
html.next-page-loading #nextSiteFooter,
html.next-page-loading .next-help-fab,
html.next-page-loading #navSearchWrap {
  display: none !important;
}

/* Alias legado */
html.next-home-loading #nextSiteFooter,
html.next-home-loading .next-help-fab,
html.next-home-loading #navSearchWrap {
  display: none !important;
}

#appHome .next-skel-page {
  min-height: calc(100vh - 5rem);
  padding-bottom: 2rem;
}

.next-skel-cta {
  width: 100%;
  min-height: 18rem;
  border-radius: 1.25rem;
}
@media (min-width: 768px) {
  .next-skel-cta {
    min-height: 20rem;
  }
}

/* Skeleton — páginas / painéis genéricos */
.next-skel-block {
  width: 100%;
  min-height: 3.5rem;
  margin-bottom: 0.75rem;
}
.next-skel-block.is-lg {
  min-height: 12rem;
}
.next-skel-block.is-md {
  min-height: 6rem;
}
.next-skel-avatar {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  flex-shrink: 0;
}
.next-skel-inline {
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  vertical-align: middle;
}

.btn.btn-success-check,
.btn.btn-danger-check {
  pointer-events: none;
}
.btn.btn-success-check .bi-check-lg,
.btn.btn-danger-check .bi-x-lg {
  font-size: 1.25em;
  line-height: 1;
  color: #fff !important;
}

/* Barra de progresso dentro do botão (NextUiBtn.progress)
   Fundo: btn-primary | preenchimento: soft-primary (tom claro sobre o primary) */
.btn.next-ui-btn--progress {
  position: relative;
  overflow: hidden;
  pointer-events: none;
  color: #fff !important;
  background-color: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
}
.btn.next-ui-btn--progress .next-ui-btn__fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  z-index: 0;
  /* Equivalente visual ao soft-primary avançando sobre o primary */
  background-color: rgba(255, 255, 255, 0.32);
  transition: width 0.08s linear;
  border-radius: inherit;
}
.btn.next-ui-btn--progress .next-ui-btn__content {
  position: relative;
  z-index: 1;
  color: #fff !important;
  font-weight: 600;
  text-shadow: 0 0 0.35rem rgba(19, 33, 68, 0.35);
}

.offcanvas-footer-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding: 1rem 1.25rem;
  border-top: 1px solid var(--bs-border-color);
}

/* Home — destaque (banner) escala pela largura do container, sem max-height que quebra o ratio */
#appHome #homeBannerCarousel,
#appHome .next-skel-banner {
  width: 100%;
}

#appHome .home-banner-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: var(--next-banner-ratio);
  object-fit: cover;
  cursor: pointer;
  background-color: var(--bs-secondary-bg, #e9ecef);
}
@media (max-width: 991.98px) {
  #appHome .home-banner-img {
    aspect-ratio: var(--next-banner-ratio-md);
  }
}
@media (max-width: 767.98px) {
  #appHome .home-banner-img {
    aspect-ratio: var(--next-banner-ratio-sm);
  }
}

#appHome .categ-scroll {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding-bottom: 0.35rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  max-width: 100%;
}

#appHome .next-categ-btn {
  flex: 0 0 auto;
  width: 7.5rem;
  height: 5rem;
  padding: 0.45rem 0.4rem;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  border-radius: 0.5rem;
  white-space: normal;
  line-height: 1.15;
}

#appHome .next-categ-btn i {
  font-size: 1.35rem;
  line-height: 1;
  flex-shrink: 0;
}

#appHome .next-categ-btn__label {
  display: block;
  width: 100%;
  font-family: inherit !important;
  font-size: 0.72rem;
  font-weight: 500;
  text-align: center;
  word-break: break-word;
  overflow-wrap: anywhere;
  hyphens: auto;
}

/* Hover e selecionado: soft-primary (não solid primary do tema) */
#appHome .next-categ-btn.btn-outline-secondary:hover,
#appHome .next-categ-btn.btn-outline-secondary:focus,
#appHome .next-categ-btn.btn-soft-primary,
#appHome .next-categ-btn.btn-soft-primary:hover,
#appHome .next-categ-btn.btn-soft-primary:focus,
#appHome .next-categ-btn.btn-soft-primary:active,
#appHome .next-categ-btn.is-selected,
#appHome .next-categ-btn.is-selected:hover,
#appHome .next-categ-btn.is-selected:focus,
#appHome .next-categ-btn.is-selected:active {
  color: var(--bs-primary) !important;
  background-color: rgba(var(--bs-primary-rgb), 0.1) !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

#appHome .event-card,
#appOrganizador .event-card,
#appPromoter .event-card,
#appSeller .event-card {
  height: 100%;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.1);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
#appHome .event-card:hover,
#appOrganizador .event-card:hover,
#appPromoter .event-card:hover,
#appSeller .event-card:hover {
  box-shadow: 0 0.5rem 1.5rem rgba(19, 33, 68, 0.14);
  transform: translateY(-0.0625rem);
}
#appHome .event-card .card-img-wrap,
#appOrganizador .event-card .card-img-wrap,
#appPromoter .event-card .card-img-wrap,
#appSeller .event-card .card-img-wrap {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #fff;
}
#appHome .event-card .card-img-wrap img,
#appOrganizador .event-card .card-img-wrap img,
#appPromoter .event-card .card-img-wrap img,
#appSeller .event-card .card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 2%;
  border-radius: 5%;
  box-sizing: border-box;
}
#appHome .event-card .badge-idade,
#appOrganizador .event-card .badge-idade {
  position: absolute;
  top: calc(0.5rem + 2%);
  right: calc(0.5rem + 2%);
  z-index: 1;
}
#appHome .event-card .card-body,
#appOrganizador .event-card .card-body,
#appPromoter .event-card .card-body,
#appSeller .event-card .card-body {
  padding: 0.875rem;
}
#appHome .event-card .card-title,
#appOrganizador .event-card .card-title,
#appPromoter .event-card .card-title,
#appSeller .event-card .card-title {
  font-size: 0.95rem;
  line-height: 1.3;
  font-weight: 600;
}

#appHome .event-card-meta,
#appOrganizador .event-card-meta,
#appPromoter .event-card-meta,
#appSeller .event-card-meta,
#appEvento .event-card-meta {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  margin-bottom: 0;
}

#appHome .event-card-meta li,
#appOrganizador .event-card-meta li,
#appPromoter .event-card-meta li,
#appSeller .event-card-meta li,
#appEvento .event-card-meta li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin: 0;
}

#appHome .event-card-meta__icon,
#appOrganizador .event-card-meta__icon,
#appPromoter .event-card-meta__icon,
#appSeller .event-card-meta__icon,
#appEvento .event-card-meta__icon {
  flex-shrink: 0;
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 0.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(var(--bs-secondary-rgb), 0.1);
  color: var(--bs-secondary);
  font-size: 0.85rem;
  line-height: 1;
}

#appHome .event-card-meta__text,
#appOrganizador .event-card-meta__text,
#appPromoter .event-card-meta__text,
#appSeller .event-card-meta__text,
#appEvento .event-card-meta__text {
  font-size: 0.8rem;
  line-height: 1.35;
  font-weight: 500;
  padding-top: 0.15rem;
}

#appHome .home-cta {
  border-radius: 1.25rem;
  width: 100%;
  padding: 2.5rem 1.5rem 1.75rem;
}

@media (min-width: 768px) {
  #appHome .home-cta {
    padding: 3rem 2.5rem 2.25rem;
  }
}

#appHome .home-cta-badge {
  display: flex;
  justify-content: center;
  margin-top: -3.75rem;
  margin-bottom: 1.75rem;
}

#appHome .home-cta-badge .badge {
  font-size: 1rem;
  padding: 0.65rem 1.35rem !important;
  line-height: 1.3;
}

#appHome .home-cta-title {
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
  line-height: 1.25;
  max-width: 28rem;
}

#appHome .home-cta-feature-text {
  font-size: 0.95rem;
  line-height: 1.45;
  margin-bottom: 0.85rem;
}

#appHome .home-cta-feature-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.75rem;
  height: 3.75rem;
  font-size: 2.25rem;
  line-height: 1;
}

#appHome .home-cta-visual {
  border-radius: 1rem;
  background: #fff;
}

#appHome .home-cta-chart {
  display: flex;
  align-items: flex-end;
  gap: 0.4rem;
  height: 6.5rem;
  padding: 0.5rem 0.25rem 0;
}

#appHome .home-cta-chart span {
  flex: 1 1 0;
  display: block;
  border-radius: 0.35rem 0.35rem 0.15rem 0.15rem;
  background: linear-gradient(
    180deg,
    rgba(var(--bs-primary-rgb), 0.95) 0%,
    rgba(var(--bs-primary-rgb), 0.35) 100%
  );
  min-height: 1rem;
}


/* Shell — header/footer helpers */
html, body {
  max-width: 100%;
  overflow-x: hidden;
  overflow-x: clip; /* clip não quebra position:sticky (hidden sim) */
}

body {
  padding-top: var(--next-navbar-height);
}

.next-help-fab {
  z-index: 98;
}

/* Navbar full-bleed (não usa o max da área de conteúdo) */
#header.next-navbar,
#header.fixed-top {
  width: 100%;
  max-width: 100%;
  min-height: var(--next-navbar-height);
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  z-index: 1030;
  border-bottom: 1px solid rgba(231, 234, 243, 0.9);
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.1);
  /* Mobile: fundo sempre sólido + camada GPU própria.
     Evita o header "transparente" durante o scroll (bug de
     composição do position:fixed no Safari/Chrome mobile). */
  background-color: #fff !important;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
}

#header.next-navbar .container-fluid {
  max-width: 100% !important;
}

#header .navbar-brand-logo {
  max-height: 2.25rem;
  width: auto;
}

#header .next-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.4rem 0.55rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--bs-secondary);
  text-decoration: none;
  border-radius: var(--bs-border-radius, 0.375rem);
  white-space: nowrap;
  transition: color 0.15s ease, background-color 0.15s ease;
}

#header .next-nav-link i {
  font-size: 1.05rem;
  line-height: 1;
}

#header .next-nav-link:hover,
#header .next-nav-link:focus {
  color: var(--bs-primary);
  background-color: rgba(var(--bs-primary-rgb), 0.06);
}

#header .next-btn-entrar {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

/* Busca hero (home) */
#homeSearch .next-search-hero {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 0.75rem 1rem;
  background: #fff;
  border: 1px solid rgba(231, 234, 243, 0.95);
  border-radius: 0.75rem;
  box-shadow: 0 0.35rem 1.25rem rgba(19, 33, 68, 0.1);
  cursor: text;
}

#homeSearch .next-search-hero__icon {
  color: var(--bs-primary);
  font-size: 1.15rem;
  flex-shrink: 0;
}

#homeSearch .next-search-hero__input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 0.95rem;
  color: var(--bs-body-color);
}

#homeSearch .next-search-hero__input::placeholder {
  color: var(--bs-secondary);
  opacity: 0.85;
}

/* Busca no navbar (ícone soft-primary → input à esquerda) */
#header .next-nav-search {
  display: none !important;
  align-items: center;
  gap: 0.35rem;
  flex-direction: row;
}

#header .next-nav-search.is-visible {
  display: inline-flex !important;
}

#header .next-nav-search-field {
  width: 0;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  transition: width 0.2s ease, max-width 0.2s ease, opacity 0.15s ease;
}

#header .next-nav-search.is-open .next-nav-search-field {
  width: 12.5rem;
  max-width: 12.5rem;
  opacity: 1;
  pointer-events: auto;
}

#header .next-nav-search-input {
  border-radius: 2rem;
  box-shadow: 0 0.15rem 0.6rem rgba(19, 33, 68, 0.08);
}

#header .next-nav-search #navSearchToggle {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  min-width: 2.25rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bs-primary, #377dff);
  background-color: rgba(var(--bs-primary-rgb, 55, 125, 255), 0.1);
  border: 0;
  border-radius: 50%;
}

#header .next-nav-search #navSearchToggle i {
  font-size: 1rem;
  line-height: 1;
}

#header .next-nav-search #navSearchToggle:hover {
  color: #fff;
  background-color: var(--bs-primary, #377dff);
}

@media (min-width: 768px) {
  #header .next-nav-search.is-open .next-nav-search-field {
    width: 16rem;
    max-width: 16rem;
  }
}

@media (max-width: 575.98px) {
  :root {
    --next-navbar-height: 4.25rem;
  }

  #header .next-nav-label {
    display: none;
  }

  #header .next-nav-link {
    padding: 0.45rem;
  }

  #header .navbar-brand-logo {
    max-height: 1.875rem;
  }

  #header .next-nav-search.is-open .next-nav-search-field {
    width: 9.5rem;
    max-width: 9.5rem;
  }
}

#appHome {
  max-width: 100%;
  overflow-x: hidden;
}

footer.bg-soft-secondary .link-secondary:hover {
  color: var(--bs-primary);
}

/* Conta next offcanvas — largura padrão 32rem */
.next-login-offcanvas.offcanvas-end {
  --bs-offcanvas-width: 32rem;
  width: 32rem !important;
  max-width: 100vw;
}
@media (max-width: 575.98px) {
  .next-login-offcanvas.offcanvas-end {
    --bs-offcanvas-width: 100vw;
    width: 100vw !important;
  }
}
.next-login-offcanvas .offcanvas-body,
.next-area-login .offcanvas-body,
.next-area-login .next-login-body {
  overflow-y: auto;
}
.next-login-offcanvas .next-login-logo,
.next-area-login .next-login-logo {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--bs-border-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  padding: 0.2rem;
}
.next-login-offcanvas .next-login-logo img,
.next-area-login .next-login-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.next-login-offcanvas .next-login-verified,
.next-area-login .next-login-verified {
  font-size: 1rem;
  line-height: 1;
}
.next-login-offcanvas h1,
.next-login-offcanvas h3,
.next-area-login h1,
.next-area-login h3 {
  font-family: inherit !important;
}
.next-login-offcanvas .btn-lg,
.next-area-login .btn-lg {
  font-weight: 600;
}

.next-login-offcanvas .next-login-method,
.next-area-login .next-login-method {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

/* 2FA — padrão Front (row gx-2 + form-control-lg) */
.next-login-offcanvas .next-2fa-code,
.next-area-login .next-2fa-code {
  max-width: 22rem;
  margin: 0.5rem auto 0;
}

.next-login-offcanvas .next-2fa-digit,
.next-area-login .next-2fa-digit {
  font-size: 1.35rem;
  font-weight: 700;
  border-radius: 0.75rem;
  caret-color: var(--bs-primary);
}

.next-login-offcanvas .next-2fa-digit:focus,
.next-area-login .next-2fa-digit:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.2);
}

.next-login-offcanvas .next-2fa-digit::placeholder,
.next-area-login .next-2fa-digit::placeholder {
  color: var(--bs-gray-400, #ced4da);
  font-weight: 400;
}

/* Offcanvas alerta (cupom pausado/expirado, etc.) */
.next-alerta-icon {
  width: 3rem;
  height: 3rem;
  border-radius: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  line-height: 1;
}
.next-alerta-icon.is-warning {
  background: rgba(var(--bs-warning-rgb, 255, 193, 7), 0.15);
  color: var(--bs-warning);
}
.next-alerta-icon.is-danger {
  background: rgba(var(--bs-danger-rgb), 0.12);
  color: var(--bs-danger);
}
.next-alerta-icon.is-success {
  background: rgba(var(--bs-success-rgb), 0.12);
  color: var(--bs-success);
}
.next-alerta-icon.is-info {
  background: rgba(var(--bs-info-rgb, 13, 202, 240), 0.12);
  color: var(--bs-info);
}



footer.bg-soft-secondary .next-footer-inner {
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
}

@media (min-width: 992px) {
  footer.bg-soft-secondary .next-footer-inner {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
}

/* ========== /evento — #appEvento ========== */
#appEvento {
  user-select: none;
  padding-bottom: 6rem;
}

#appEvento .next-skel-card-img {
  aspect-ratio: 1 / 1;
  width: 100%;
  border-radius: 0;
}

#appEvento .next-skel-meta-icon {
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 0.4rem;
  flex-shrink: 0;
}

#appEvento .next-evento-banner {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--bs-secondary-bg, #e9ecef);
}

#appEvento .next-evento-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#appEvento .next-evento-banner .badge-idade {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 1;
  font-weight: 600;
  letter-spacing: 0.02em;
}

#appEvento .next-evento-share {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
}

#appEvento .next-evento-share__btns {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

#appEvento .next-evento-share__btns .btn {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

#appEvento .next-evento-share__hint {
  font-size: 0.7rem;
  color: var(--bs-secondary-color, #677788);
  margin: 0;
}

#appEvento .event-card-meta {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  margin-bottom: 0;
}

#appEvento .event-card-meta li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin: 0;
}

#appEvento .event-card-meta__icon {
  flex-shrink: 0;
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 0.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(var(--bs-secondary-rgb), 0.1);
  color: var(--bs-secondary);
  font-size: 0.85rem;
  line-height: 1;
}

#appEvento .event-card-meta__text {
  font-size: 0.85rem;
  line-height: 1.35;
  font-weight: 500;
  padding-top: 0.15rem;
}

#appEvento .event-card-meta__datetime {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1rem;
}

#appEvento .event-card-meta__part {
  display: inline-flex;
  align-items: flex-start;
  gap: 0.55rem;
}

#appEvento .next-evento-panel {
  border: 0;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.08);
  border-radius: 0.75rem;
  overflow: hidden;
}

#appEvento .next-evento-panel .card-body {
  padding: 1rem;
}

#appEvento .next-evento-panel__title {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--bs-secondary-color, #677788);
  margin-bottom: 0.65rem;
}

#appEvento .next-evento-panel a:not(.btn) {
  color: inherit;
  text-decoration: none;
}

#appEvento .next-evento-panel a:not(.btn):hover {
  color: var(--bs-primary);
}

#appEvento .next-evento-cupom-code {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--bs-primary);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

#appEvento .next-evento-cupom-label {
  font-size: 0.7rem;
  color: var(--bs-secondary-color, #677788);
  margin-bottom: 0.15rem;
}

#appEvento .next-evento-heading {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: 1.15rem 1.25rem;
  background: var(--bs-body-bg, #fff);
  border-bottom: 1px solid var(--bs-border-color, #e7eaf3);
}

#appEvento .next-evento-heading__title {
  font-size: clamp(1.15rem, 2vw, 1.45rem);
  font-weight: 700;
  line-height: 1.25;
  color: var(--bs-heading-color, #1e2022);
  margin: 0;
}

#appEvento .next-evento-heading__date {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--bs-primary);
  margin: 0;
}

#appEvento .next-ticket-cat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.85rem 1rem;
  margin-top: 0.75rem;
  border-radius: 0.65rem;
  background: rgba(var(--bs-primary-rgb), 0.1);
  color: var(--bs-primary);
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  cursor: pointer;
  user-select: none;
  transition: background-color 0.15s ease;
}

#appEvento .next-ticket-cat:hover {
  background: rgba(var(--bs-primary-rgb), 0.16);
}

#appEvento .next-ticket-cat:first-child {
  margin-top: 0;
}

#appEvento .next-ticket-group {
  margin-bottom: 0.25rem;
}

#appEvento .next-ticket-group:last-child {
  margin-bottom: 0;
}

#appEvento .next-ticket-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

#appEvento .next-ticket-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.25rem;
  padding: 0.95rem 0.15rem;
  border-bottom: 1px solid var(--bs-border-color, #eef0f7);
}

#appEvento .next-ticket-item:last-child {
  border-bottom: 0;
}

#appEvento .next-ticket-item__main {
  flex: 1 1 auto;
  min-width: 0;
}

#appEvento .next-ticket-item__footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 3rem;
  flex: 0 0 auto;
}

#appEvento .next-ticket-item__price {
  text-align: right;
  min-width: 0;
}

#appEvento .next-ticket-price-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  gap: 0.2rem 0.35rem;
}

#appEvento .next-ticket-title {
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--bs-body-color);
  line-height: 1.3;
}

#appEvento .next-ticket-desc {
  font-size: 0.8rem;
  color: var(--bs-secondary-color, #677788);
  margin-top: 0.2rem;
  line-height: 1.35;
}

#appEvento .next-ticket-price {
  font-size: 1rem;
  font-weight: 700;
  color: var(--bs-body-color);
  white-space: nowrap;
}

#appEvento .next-ticket-price.is-promo {
  color: var(--bs-primary);
}

#appEvento .next-ticket-price-old {
  font-size: 0.75rem;
  color: var(--bs-secondary-color, #9b9b9b);
}

#appEvento .next-ticket-taxa {
  font-size: 0.7rem;
  color: var(--bs-secondary-color, #677788);
  margin-top: 0.15rem;
}

#appEvento .next-ticket-taxa.is-promo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.05rem;
}

#appEvento .next-ticket-taxa-free {
  font-weight: 700;
  color: var(--bs-primary);
  font-size: 0.75rem;
}

#appEvento .next-ticket-soldout {
  display: inline-block;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  background: rgba(var(--bs-danger-rgb), 0.12);
  color: var(--bs-danger);
  font-size: 0.75rem;
  font-weight: 600;
  white-space: nowrap;
}

#appEvento .next-qty {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

#appEvento .next-qty.is-busy {
  pointer-events: none;
}

#appEvento .next-qty.is-busy .next-qty__btn:not(.is-busy) {
  opacity: 0.45;
}

#appEvento .next-qty__btn {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 400;
  cursor: pointer;
  line-height: 1;
  flex-shrink: 0;
  border: 1px solid transparent;
  transition: opacity 0.15s ease, transform 0.1s ease;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  position: relative;
}

#appEvento .next-qty__btn.is-busy {
  cursor: wait;
}

#appEvento .next-qty__btn:active:not(.is-busy) {
  transform: scale(0.94);
}

#appEvento .next-qty__btn--dec {
  background: var(--bs-secondary-bg, #efefef);
  border-color: var(--bs-border-color, #ced4da);
  color: var(--bs-body-color);
}

#appEvento .next-qty__btn--inc {
  background: var(--bs-primary);
  color: #fff;
  border-color: var(--bs-primary);
}

#appEvento .next-qty__btn .bi {
  display: block;
  line-height: 1;
  font-size: 1rem;
  pointer-events: none;
}

#appEvento .next-qty__btn .bi::before {
  font-family: "bootstrap-icons" !important;
  font-weight: 400 !important;
  line-height: 1;
  vertical-align: 0;
}

#appEvento .next-qty__btn .spinner-border {
  width: 0.95rem;
  height: 0.95rem;
  border-width: 0.14rem;
}

#appEvento .next-qty__val {
  min-width: 1.75rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}

#appEvento .next-evento-info {
  border: 0;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
  border-radius: 0.75rem;
  overflow: hidden;
}

#appEvento .next-evento-info .card-header {
  background: transparent;
  border-bottom: 1px solid var(--bs-border-color, #e7eaf3);
  padding: 1rem 1.25rem;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--bs-secondary-color, #677788);
}

#appEvento .next-evento-info .card-body {
  padding: 1.15rem 1.25rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--bs-body-color);
}

#appEvento .next-evento-info__list {
  margin: 0;
  padding-left: 1.1rem;
}

#appEvento .next-evento-info__list li {
  margin-bottom: 0.55rem;
}

#appEvento .next-evento-info__list li:last-child {
  margin-bottom: 0;
}

#appEvento .next-evento-contact-item {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  margin-bottom: 0.4rem;
  font-size: 0.9rem;
  color: var(--bs-secondary-color, #677788);
}

#appEvento .next-evento-contact-item:last-child {
  margin-bottom: 0;
}

#appEvento .next-evento-contact-item a {
  color: inherit;
  text-decoration: none;
}

#appEvento .next-evento-contact-item a:hover {
  color: var(--bs-primary);
}

#appEvento .next-evento-contact-name {
  font-weight: 700;
  color: var(--bs-primary);
  margin-bottom: 0.5rem;
}

#appEvento .next-evento-contact-name a {
  color: inherit;
  text-decoration: none;
}

#appEvento .next-evento-contact-name a:hover {
  text-decoration: underline;
}

/* Barra flutuante Comprar */
#appEvento .barra-flutuante.next-evento-bar,
#appEvento .next-evento-bar {
  bottom: 0;
  left: 0;
  position: fixed;
  width: 100%;
  z-index: 99;
  padding: 1.5rem 0;
  background: rgba(255, 255, 255, 0.96);
  border-top: 1px solid var(--bs-border-color, #e7eced);
  box-shadow: 0 -0.35rem 1.25rem rgba(19, 33, 68, 0.08);
  backdrop-filter: blur(8px);
  height: auto;
  font-size: inherit;
  font-weight: inherit;
}

#appEvento .next-evento-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: var(--next-area-max);
}

#appEvento .next-evento-bar__meta {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
}

#appEvento .next-evento-bar__qty {
  font-size: 0.8rem;
  font-weight: 500;
  text-transform: none;
}

#appEvento .next-evento-bar__total {
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--bs-heading-color, #1e2022) !important;
}

#appEvento .next-evento-bar__btn.btn-comprar,
#appEvento .btn-comprar.next-evento-bar__btn {
  width: auto;
  min-width: 10rem;
  font-weight: 600;
  flex-shrink: 0;
}

#appEvento .next-evento-bar__actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}

#appEvento .next-evento-bar__cupom {
  white-space: nowrap;
  font-weight: 600;
  text-decoration: none;
  padding: 0.25rem 0.15rem;
}

#appEvento .next-evento-bar__cupom:hover {
  text-decoration: underline;
}

#appEvento .next-evento-cupom-card {
  scroll-margin-top: 1.25rem;
  scroll-margin-bottom: 7rem;
}

#appEvento .next-evento-cupom-card.is-highlight {
  animation: nextCupomHighlight 2s ease;
}

@keyframes nextCupomHighlight {
  0%, 100% {
    box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.08);
    outline: 2px solid transparent;
    outline-offset: 0;
  }
  15%, 85% {
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
    outline: 2px solid var(--bs-primary);
    outline-offset: 0.15rem;
  }
}

#appEvento .next-evento-cupom-form .form-control {
  margin-bottom: 0.65rem;
}

#appEvento .next-evento-cupom-form .btn {
  width: 100%;
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#appEvento .next-evento-cupom-form .alert {
  margin-top: 0.75rem;
  margin-bottom: 0;
  font-size: 0.85rem;
}

#appEvento .next-evento-cupom-applied .next-evento-cupom-code {
  margin-bottom: 0.35rem;
}

#appEvento .next-evento-cupom-off {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0;
  line-height: 1.3;
}

#appEvento .next-evento-cupom-off__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  border-radius: 0.45rem;
  background: rgba(var(--bs-primary-rgb), 0.12);
  color: var(--bs-primary);
}

#appEvento .next-evento-cupom-off__icon .bi {
  font-size: 0.8rem;
  line-height: 1;
  opacity: 1;
}

#appEvento .next-evento-cupom-off__value {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--bs-secondary-color, #677788);
  letter-spacing: 0.01em;
}

#appEvento .next-evento-cupom-actions {
  display: block;
  margin-top: 0.75rem;
}

#appEvento .next-evento-cupom-alterar {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.3;
}

#appEvento .next-evento-cupom-alterar .bi {
  font-size: 1rem;
  line-height: 1;
}

#appEvento .next-evento-cupom-alterar:hover {
  text-decoration: underline;
}


@media (max-width: 575.98px) {
  #appEvento .next-evento-bar__inner {
    flex-wrap: wrap;
  }

  #appEvento .next-evento-bar__actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  #appEvento .next-evento-bar__cupom {
    text-align: center;
    order: 2;
  }

  #appEvento .next-evento-bar__btn.btn-comprar,
  #appEvento .btn-comprar.next-evento-bar__btn {
    width: 100%;
    min-width: 0;
    order: 1;
  }

  #appEvento .next-evento-bar__total {
    font-size: 1.2rem;
  }

  #appEvento .next-evento-heading {
    padding: 1rem;
  }

  #appEvento .next-evento-panel .card-body {
    padding: 1rem;
  }

  #appEvento .event-card-meta__datetime {
    gap: 0.65rem 0.85rem;
  }
}

@media (max-width: 767.98px) {
  #appEvento .row.g-4 > [class*="col-"] {
    margin-bottom: 0.25rem;
  }

  #appEvento .container.py-4 {
    padding-left: 0.85rem;
    padding-right: 0.85rem;
  }

  /* Lista de ingressos — card empilhado no mobile/tablet */
  #appEvento .next-ticket-list {
    gap: 0.65rem;
    padding-top: 0.35rem;
  }

  #appEvento .next-ticket-item {
    flex-direction: column;
    align-items: stretch;
    gap: 0.7rem;
    padding: 0.9rem 0.95rem;
    border: 1px solid var(--bs-border-color, #e7eaf3);
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.15rem 0.55rem rgba(19, 33, 68, 0.04);
  }

  #appEvento .next-ticket-item:last-child {
    border-bottom: 1px solid var(--bs-border-color, #e7eaf3);
  }

  #appEvento .next-ticket-item__footer {
    width: 100%;
    justify-content: space-between;
    align-items: center;
    gap: 3rem;
    padding-top: 0.65rem;
    border-top: 1px solid var(--bs-border-color, #eef0f7);
  }

  #appEvento .next-ticket-item__price {
    text-align: left;
    flex: 1 1 auto;
    min-width: 0;
  }

  #appEvento .next-ticket-price-wrap {
    justify-content: flex-start;
  }

  #appEvento .next-ticket-title {
    font-size: 0.98rem;
  }

  #appEvento .next-ticket-desc {
    font-size: 0.78rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  #appEvento .next-ticket-price {
    font-size: 1.05rem;
  }

  #appEvento .next-qty {
    gap: 0.4rem;
  }

  #appEvento .next-qty__btn {
    width: 2.25rem;
    height: 2.25rem;
  }

  #appEvento .next-qty__val {
    min-width: 1.5rem;
  }

  #appEvento .next-ticket-cat {
    padding: 0.75rem 0.9rem;
    font-size: 0.78rem;
    margin-top: 0.85rem;
    margin-bottom: 0.15rem;
  }

  #appEvento .next-ticket-group + .next-ticket-group .next-ticket-cat {
    margin-top: 1rem;
  }
}

/* ========== /evento/comprar — #appPagar (checkout) ========== */
#appPagar {
  padding-top: 1.5rem;
  padding-bottom: 4rem;
  max-width: var(--next-area-max);
}

#appPagar .next-pagar-skel-steps {
  display: flex;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

#appPagar .next-pagar-skel-step {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  flex-shrink: 0;
}

#appPagar .next-pagar-skel-card {
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
  background: #fff;
  overflow: hidden;
  padding: 1.25rem 1.35rem;
}

#appPagar .next-pagar-step-body {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 5rem;
}

#appPagar .card {
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
}

#appPagar .card-header {
  background: transparent;
  border-bottom: 1px solid var(--bs-border-color, #e7eaf3);
  font-weight: 700;
  font-size: 0.9rem;
}

#appPagar .card-header.h5,
#appPagar .card-header.h4 {
  color: var(--bs-body-color);
}

#appPagar .next-pagar-panel .card-header-title,
#appPedido .next-pagar-panel .card-header-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--bs-body-color);
  margin: 0;
}

/* Step 2 — detalhe do pedido */
#appPagar .next-pagar-order__event,
#appPedido .next-pagar-order__event {
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--bs-border-color, #eef0f7);
}

#appPagar .next-pagar-order__thumb,
#appPedido .next-pagar-order__thumb {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.65rem;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--bs-secondary-bg, #eef0f7);
}

#appPagar .next-pagar-order__thumb img,
#appPedido .next-pagar-order__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#appPagar .next-pagar-order__event-title,
#appPedido .next-pagar-order__event-title {
  font-weight: 700;
  font-size: 1rem;
  color: var(--bs-body-color);
  line-height: 1.3;
  /* Nomes longos quebram linha em vez de truncar */
  white-space: normal;
  overflow-wrap: break-word;
  word-break: break-word;
}

#appPagar .next-pagar-order__count,
#appPedido .next-pagar-order__count {
  font-size: 0.875rem;
  font-weight: 600;
}

#appPagar .next-pagar-order__item,
#appPedido .next-pagar-order__item {
  padding: 1rem 0;
  border-bottom: 1px solid var(--bs-border-color, #eef0f7);
}

#appPagar .next-pagar-order__item:last-of-type,
#appPedido .next-pagar-order__item:last-of-type {
  border-bottom: 0;
}

#appPagar .next-pagar-order__item-badge,
#appPedido .next-pagar-order__item-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--bs-primary);
  margin-bottom: 0.35rem;
}

#appPagar .next-pagar-order__item-title,
#appPedido .next-pagar-order__item-title {
  font-weight: 600;
  font-size: 0.98rem;
  color: var(--bs-body-color);
  line-height: 1.35;
}

#appPagar .next-pagar-order__item-desc,
#appPedido .next-pagar-order__item-desc {
  font-size: 0.8rem;
  color: var(--bs-secondary-color, #677788);
  margin-top: 0.2rem;
  line-height: 1.35;
}

#appPagar .next-pagar-order__item-price,
#appPedido .next-pagar-order__item-price {
  margin-top: 0.65rem;
}

#appPagar .next-pagar-order__price,
#appPedido .next-pagar-order__price {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--bs-body-color);
}

#appPagar .next-pagar-order__price.is-promo,
#appPedido .next-pagar-order__price.is-promo {
  color: var(--bs-primary);
}

#appPagar .next-pagar-order__discount,
#appPedido .next-pagar-order__discount {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--bs-danger);
  margin-top: 0.15rem;
}

#appPagar .next-pagar-order__promo-toggle,
#appPedido .next-pagar-order__promo-toggle {
  font-weight: 600;
  text-decoration: none;
}

#appPagar .next-pagar-order__promo-toggle:hover,
#appPedido .next-pagar-order__promo-toggle:hover {
  text-decoration: underline;
}

#appPagar .next-pagar-order__promo-applied,
#appPedido .next-pagar-order__promo-applied,
#appPagar .next-pagar-order__promo-locked,
#appPedido .next-pagar-order__promo-locked {
  padding: 0.85rem 1rem;
  border-radius: 0.65rem;
  background: rgba(var(--bs-primary-rgb), 0.08);
  font-size: 0.9rem;
}

#appPagar .next-pagar-order__totals,
#appPedido .next-pagar-order__totals {
  padding-top: 1rem;
  border-top: 1px solid var(--bs-border-color, #eef0f7);
}

#appPagar .next-pagar-order__total-row,
#appPedido .next-pagar-order__total-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.35rem 0;
  font-size: 0.9rem;
  color: var(--bs-secondary-color, #677788);
}

#appPagar .next-pagar-order__total-row span:last-child,
#appPedido .next-pagar-order__total-row span:last-child {
  color: var(--bs-body-color);
  font-weight: 600;
  text-align: right;
}

#appPagar .next-pagar-order__total-row.is-discount span:last-child,
#appPedido .next-pagar-order__total-row.is-discount span:last-child {
  color: var(--bs-danger);
}

#appPagar .next-pagar-order__total-row.is-pay,
#appPedido .next-pagar-order__total-row.is-pay {
  margin-top: 0.5rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--bs-border-color, #eef0f7);
  font-size: 1.05rem;
  color: var(--bs-body-color);
  font-weight: 700;
}

#appPagar .next-pagar-order__total-row.is-pay span:last-child,
#appPedido .next-pagar-order__total-row.is-pay span:last-child {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--bs-body-color);
}

/* Steps 1 e 3 — dados + pagamento */
#appPagar .next-pagar-section-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--bs-body-color);
  margin: 0 0 0.85rem;
}

#appPagar .next-pagar-section-bar {
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--bs-border-color, #eef0f7);
  margin-bottom: 0.25rem;
}

#appPagar .next-pagar-free__icon {
  width: 3.25rem;
  height: 3.25rem;
  margin: 0 auto;
  border-radius: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--bs-primary-rgb), 0.1);
  color: var(--bs-primary);
  font-size: 1.5rem;
}

#appPagar .next-pagar-pay-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
  gap: 0.65rem;
  margin-bottom: 0.5rem;
}

#appPagar .next-pagar-pay-tab {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  text-align: left;
  padding: 0.85rem 0.95rem;
  border: 1px solid var(--bs-border-color, #e7eaf3);
  border-radius: 0.75rem;
  background: #fff;
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

#appPagar .next-pagar-pay-tab:hover {
  border-color: rgba(var(--bs-primary-rgb), 0.45);
}

#appPagar .next-pagar-pay-tab.is-active {
  border-color: var(--bs-primary);
  background: rgba(var(--bs-primary-rgb), 0.06);
  box-shadow: 0 0 0 1px rgba(var(--bs-primary-rgb), 0.2);
}

#appPagar .next-pagar-pay-tab__icon {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--bs-secondary-bg, #eef0f7);
  color: var(--bs-body-color);
  font-size: 1.1rem;
}

#appPagar .next-pagar-pay-tab__icon.is-pix {
  background: rgba(0, 183, 169, 0.12);
  color: #00a396;
}

#appPagar .next-pagar-pay-tab.is-active .next-pagar-pay-tab__icon:not(.is-pix) {
  background: rgba(var(--bs-primary-rgb), 0.12);
  color: var(--bs-primary);
}

#appPagar .next-pagar-pay-tab__text {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
}

#appPagar .next-pagar-pay-tab__text strong {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--bs-body-color);
  line-height: 1.2;
}

#appPagar .next-pagar-pay-tab__text small {
  font-size: 0.72rem;
  color: var(--bs-secondary-color, #677788);
  line-height: 1.25;
}

#appPagar .next-pagar-pay-hint {
  background: var(--bs-secondary-bg, #f8f9fc);
  border-radius: 0.65rem;
  padding: 1.25rem 1rem;
}

#appPagar .next-pagar-card-option {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  margin: 0 0 0.55rem;
  padding: 0.85rem 1rem;
  border: 1px solid var(--bs-border-color, #e7eaf3);
  border-radius: 0.75rem;
  cursor: pointer;
  background: #fff;
}

#appPagar .next-pagar-card-option:has(input:checked),
#appPagar .next-pagar-card-option.is-active {
  border-color: var(--bs-primary);
  background: rgba(var(--bs-primary-rgb), 0.05);
}

#appPagar .next-pagar-card-option__main {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
}

#appPagar .next-pagar-card-option input[type="radio"] {
  flex-shrink: 0;
  margin: 0;
}

#appPagar .next-pagar-card-option__icon,
#appPagar .next-pagar-card-option__brand {
  width: 2rem;
  height: 2rem;
  border-radius: 0.45rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--bs-body-color);
  overflow: hidden;
}

#appPagar .next-pagar-card-option__icon {
  background: var(--bs-secondary-bg, #eef0f7);
}

#appPagar .next-pagar-card-option__brand {
  background: transparent;
  border: 1px solid var(--bs-border-color, #e7eaf3);
}

#appPagar .next-pagar-card-option__brand img {
  width: 1.15rem;
  height: 1.15rem;
  object-fit: contain;
  display: block;
}

#appPagar .next-pagar-card-option__text {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
}

#appPagar .next-pagar-card-option__text strong {
  font-size: 0.9rem;
  font-weight: 700;
}

#appPagar .next-pagar-card-option__text small {
  font-size: 0.75rem;
  color: var(--bs-secondary-color, #677788);
}

#appPagar .next-pagar-card-option--add {
  border-style: dashed;
}

#appPagar .next-pagar-parcelas__ok {
  color: var(--bs-success) !important;
}

#appPagar .next-pagar-card__form {
  margin-top: 0.75rem;
}

#appPagar .next-pagar-card__form .form-label {
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--bs-body-color);
}

#appPagar .next-pagar-modal .modal-content {
  border: 0;
  border-radius: 0.85rem;
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}

#appPagar .next-pagar-modal .modal-header {
  border-bottom: 1px solid var(--bs-border-color, #e7eaf3);
  padding: 1rem 1.25rem;
}

#appPagar .next-pagar-modal .modal-title {
  font-size: 1rem;
  font-weight: 700;
}

#appPagar .next-pagar-modal .modal-body {
  padding: 1.25rem;
}

#appPagar .next-pagar-modal__hint {
  margin: 0;
  font-size: 0.9rem;
  color: var(--bs-secondary-color, #677788);
  line-height: 1.45;
}

#appPagar .next-pagar-modal .modal-footer {
  border-top: 1px solid var(--bs-border-color, #e7eaf3);
  padding: 0.85rem 1.25rem;
  gap: 0.5rem;
}

#appPagar .next-pagar-card__brands {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid var(--bs-border-color, #eef0f7);
}

#appPagar .next-pagar-card__brands-label {
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--bs-secondary-color, #677788);
}

#appPagar .next-pagar-card__brands-img {
  display: block;
  width: auto;
  max-width: 11.5rem;
  height: auto;
  opacity: 0.85;
}

@media (max-width: 575.98px) {
  #appPagar .next-pagar-card__brands-img {
    max-width: 9.5rem;
  }
}

/* Step 4 — revisão + sucesso */
#appPagar .next-pagar-review__label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--bs-secondary-color, #677788);
  margin-bottom: 0.2rem;
}

#appPagar .next-pagar-review__value {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--bs-body-color);
  line-height: 1.4;
}

#appPagar .next-pagar-review__edit {
  font-weight: 600;
  text-decoration: none;
}

#appPagar .next-pagar-success__img {
  width: 7.5rem;
  height: auto;
  display: inline-block;
}

#appPagar .next-pagar-success__btn {
  min-width: 12rem;
}

#appPagar .next-pagar-pix-chave {
  background: var(--bs-secondary-bg, #f2f6f7);
  font-size: 0.85rem;
}

#appPagar .next-pagar-pix-progress {
  height: 0.5rem;
  border-radius: 999px;
  background: var(--bs-border-color, #e7eaf3);
  overflow: hidden;
}

#appPagar .next-pagar-pix-progress__bar {
  height: 100%;
  width: 100%;
  border-radius: 999px;
  background: var(--bs-primary);
  transition: width 1s linear;
}

#appPagar .next-pagar-pix-timer {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--bs-body-color);
}

#appPagar .next-pagar-pix-qr {
  background: var(--bs-secondary-bg, #f8f9fc);
  border-radius: 0.75rem;
}

/* Stepper checkout (substitui HS Step Form) */
#appPagar .next-pagar-stepper {
  margin: 0 auto 1.75rem;
  max-width: 100%;
}

#appPagar .next-pagar-stepper__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  width: 100%;
}

#appPagar .next-pagar-stepper__item {
  position: relative;
  flex: 1 1 0;
  max-width: 11rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-width: 0;
  padding: 0 0.35rem;
}

#appPagar .next-pagar-stepper__item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 1.05rem;
  left: calc(50% + 1.15rem);
  right: calc(-50% + 1.15rem);
  height: 2px;
  background: var(--bs-border-color, #e7eaf3);
  z-index: 0;
}

#appPagar .next-pagar-stepper__item.is-done:not(:last-child)::after,
#appPagar .next-pagar-stepper__item.is-active:not(:last-child)::after {
  background: rgba(var(--bs-primary-rgb), 0.45);
}

#appPagar .next-pagar-stepper__dot {
  position: relative;
  z-index: 1;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1;
  background: var(--bs-secondary-bg, #eef0f7);
  color: var(--bs-secondary-color, #677788);
  border: 2px solid transparent;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

#appPagar .next-pagar-stepper__dot .bi {
  font-size: 1rem;
  line-height: 1;
}

#appPagar .next-pagar-stepper__item.is-active .next-pagar-stepper__dot {
  background: rgba(var(--bs-primary-rgb), 0.12);
  color: var(--bs-primary);
  border-color: var(--bs-primary);
}

#appPagar .next-pagar-stepper__item.is-done .next-pagar-stepper__dot {
  background: var(--bs-primary);
  color: #fff;
  border-color: var(--bs-primary);
}

#appPagar .next-pagar-stepper__label {
  margin-top: 0.45rem;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--bs-secondary-color, #677788);
  line-height: 1.25;
  max-width: 7.5rem;
}

#appPagar .next-pagar-stepper__item.is-active .next-pagar-stepper__label {
  color: var(--bs-body-color);
}

#appPagar .next-pagar-stepper__item.is-done .next-pagar-stepper__label {
  color: var(--bs-primary);
}

#appPagar .next-pagar-nav {
  margin-top: 1.5rem;
  padding-top: 1.15rem;
  border-top: 1px solid var(--bs-border-color, #eef0f7);
}

#appPagar .next-pagar-nav .btn-primary {
  min-width: 10.5rem;
}

#appPagar .next-pagar-nav .btn-link {
  font-weight: 600;
  text-decoration: none;
}

#appPagar .next-pagar-nav .btn-link:hover {
  text-decoration: underline;
}

#appPagar .img-band {
  width: 20px;
  height: 20px;
  position: relative;
  bottom: 4px;
}

#appPagar .img-band img {
  width: 100%;
}

#appPagar .invalid_aviso {
  display: none;
  color: var(--bs-danger);
  font-size: 0.7rem;
}

#appPagar .invalid_border {
  border-color: var(--bs-danger) !important;
}

#appPagar .invalid_icon {
  display: none;
  color: var(--bs-danger);
}

#appPagar #challengeIframeElement {
  z-index: 9999;
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.88);
}

#appPagar .modal_area_confirma {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

#appPagar .elemt_flex {
  display: flex !important;
}

#appPagar .modal_confirma {
  background-color: #fff;
  border-radius: 0.75rem;
  overflow: hidden;
}

@media (max-width: 575.98px) {
  #appPagar {
    padding-top: 1rem;
    padding-bottom: 3rem;
  }

  #appPagar .next-pagar-stepper {
    margin-bottom: 1.25rem;
  }

  #appPagar .next-pagar-stepper__item {
    max-width: none;
    padding: 0 0.15rem;
  }

  #appPagar .next-pagar-stepper__item:not(:last-child)::after {
    left: calc(50% + 1rem);
    right: calc(-50% + 1rem);
  }

  #appPagar .next-pagar-stepper__dot {
    width: 2rem;
    height: 2rem;
    font-size: 0.8rem;
  }

  #appPagar .next-pagar-stepper__label {
    font-size: 0.65rem;
    max-width: 4.5rem;
  }

  /* Mobile: mostra label só do step ativo (menos ruído) */
  #appPagar .next-pagar-stepper__item:not(.is-active) .next-pagar-stepper__label {
    opacity: 0;
    height: 0;
    overflow: hidden;
    margin-top: 0;
  }

  #appPagar .next-pagar-stepper__item.is-active .next-pagar-stepper__label {
    opacity: 1;
    height: auto;
    margin-top: 0.4rem;
  }

  #appPagar .next-pagar-nav .btn-primary {
    min-width: 0;
    width: 100%;
  }
}

/* ========== Área do cliente — #appConta / #pedidosVue / #appPedido / #appCortesias ========== */
#appConta,
#pedidosVue,
#appPedido,
#appCortesias,
#appAjuda,
#appOrganizador,
#pedidoPage,
#pedidosPage,
#cortesiasPage {
  max-width: var(--next-area-max);
  padding-top: 1.5rem;
  padding-bottom: 4rem;
}

/* Conteúdo aninhado — sem padding duplicado */
#pedidoPage #appPedido,
#pedidosPage #pedidosVue,
#cortesiasPage #appCortesias {
  max-width: none;
  padding-top: 0;
  padding-bottom: 0;
}

#appConta .next-cliente-page-head,
#pedidosVue .next-cliente-page-head,
#appPedido .next-cliente-page-head,
#appCortesias .next-cliente-page-head,
#appAjuda .next-cliente-page-head,
#pedidoPage .next-cliente-page-head,
#pedidosPage .next-cliente-page-head,
#cortesiasPage .next-cliente-page-head,
#appPromoter .next-cliente-page-head,
#appSeller .next-cliente-page-head,
#appFinalizar .next-cliente-page-head {
  margin-bottom: 1.5rem;
}

#appConta .next-cliente-page-head h1,
#pedidosVue .next-cliente-page-head h1,
#appPedido .next-cliente-page-head h1,
#appCortesias .next-cliente-page-head h1,
#appAjuda .next-cliente-page-head h1,
#appPromoter .next-cliente-page-head h1,
#appSeller .next-cliente-page-head h1,
#appFinalizar .next-cliente-page-head h1 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #132144;
  margin: 0 0 0.25rem;
  letter-spacing: -0.02em;
}

#appConta .next-cliente-page-head p,
#pedidosVue .next-cliente-page-head p,
#appPedido .next-cliente-page-head p,
#appCortesias .next-cliente-page-head p,
#appAjuda .next-cliente-page-head p,
#appPromoter .next-cliente-page-head p,
#appSeller .next-cliente-page-head p,
#appFinalizar .next-cliente-page-head p {
  margin: 0;
  color: #677788;
  font-size: 0.95rem;
}

#appConta .card,
#pedidosVue .card,
#appPedido .card,
#appCortesias .card,
#appAjuda .card {
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
  background: #fff;
  overflow: hidden;
}

#appConta .card > .card-header,
#pedidosVue .card > .card-header,
#appPedido .card > .card-header,
#appCortesias .card > .card-header,
#appAjuda .card > .card-header {
  background: transparent !important;
  color: #132144 !important;
  border-bottom: 1px solid rgba(19, 33, 68, 0.08);
  padding: 1rem 1.25rem;
}

#appConta .card > .card-header .card-title,
#appConta .card > .card-header h2,
#appConta .card > .card-header h4,
#pedidosVue .card > .card-header h4,
#appPedido .card > .card-header h4,
#appCortesias .card > .card-header h4,
#appAjuda .card > .card-header h2,
#appAjuda .card > .card-header .card-header-title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 700;
  color: #132144;
}

#appConta .card > .card-header small,
#pedidosVue .card > .card-header small,
#appPedido .card > .card-header small {
  color: #677788 !important;
  font-size: 0.85rem;
}

#appConta .card-body,
#pedidosVue .card-body,
#appPedido .card-body,
#appCortesias .card-body,
#appAjuda .card-body {
  padding: 1.15rem 1.25rem;
}

#appAjuda .card-body.p-0 {
  padding: 0 !important;
}

/* Conta — layout + nav lateral */
#appConta .next-conta-layout {
  display: grid;
  grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr);
  gap: 1.25rem 1.5rem;
  align-items: start;
  overflow: visible;
}

#appConta .next-conta-aside {
  position: -webkit-sticky;
  position: sticky;
  top: calc(var(--next-navbar-height, 4.75rem) + 0.75rem);
  z-index: 2;
  align-self: start;
  height: fit-content;
  max-height: calc(100vh - var(--next-navbar-height, 4.75rem) - 1.5rem);
  overflow: visible;
  /* Evita que o conteúdo interno alargue a coluna do grid */
  min-width: 0;
  max-width: 100%;
}

#appConta .next-conta-main {
  min-width: 0;
  max-width: 100%;
}

#appConta .next-conta-nav.card-navbar-nav {
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
  padding: 0.5rem !important;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  overflow: visible;
}

#appConta .next-conta-nav__link {
  border-radius: 0.5rem;
  color: #677788;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem 0.85rem;
  text-decoration: none;
}

#appConta .next-conta-nav__link i {
  font-size: 1.05rem;
  opacity: 0.85;
}

#appConta .next-conta-nav__link.active,
#appConta .next-conta-nav__link:hover {
  color: var(--bs-primary, #096e97);
  background: rgba(9, 110, 151, 0.08);
}

#appConta #dadosPessoais,
#appConta #senhaAcesso,
#appConta #meusCartoes,
#appConta #minhasNotificacoes,
#appConta #meusDispositivos {
  scroll-margin-top: calc(var(--next-navbar-height, 4.75rem) + 1rem);
}

@media (max-width: 991.98px) {
  #appConta .next-conta-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  #appConta .next-conta-aside {
    position: static;
    top: auto;
    max-height: none;
  }

  #appConta .next-conta-nav.card-navbar-nav {
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    gap: 0.35rem;
    padding: 0.4rem !important;
    max-width: 100%;
    scrollbar-width: thin;
  }

  #appConta .next-conta-nav__link {
    flex: 0 0 auto;
    white-space: nowrap;
    padding: 0.55rem 0.75rem;
    font-size: 0.875rem;
  }
}

/* Conta — mobile: avatar menor e card de foto empilhado/centralizado */
@media (max-width: 575.98px) {
  #appConta .next-conta-avatar {
    width: 5.5rem;
    height: 5.5rem;
  }

  #appConta .next-conta-avatar-card .card-body > .d-flex {
    flex-direction: column;
    align-items: center !important;
    text-align: center;
  }

  #appConta .next-conta-avatar-card .card-body .d-flex.flex-wrap.align-items-center {
    justify-content: center;
  }
}

#appConta .card-navbar-nav {
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
  padding: 0.5rem !important;
  background: #fff;
}

#appConta .card-navbar-nav .nav-link {
  border-radius: 0.5rem;
  color: #677788;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#appConta .card-navbar-nav .nav-link.active,
#appConta .card-navbar-nav .nav-link:hover {
  color: var(--bs-primary, #096e97);
  background: rgba(9, 110, 151, 0.08);
}

#appConta .next-conta-avatar {
  display: inline-flex;
  position: relative;
  flex-shrink: 0;
  margin: 0;
  overflow: hidden;
}

#appConta .next-conta-avatar .avatar-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#appConta .input-label,
#appConta .col-form-label {
  color: #677788;
  font-weight: 500;
  font-size: 0.875rem;
}

#appConta #dadosPessoais .form-control:disabled,
#appConta #dadosPessoais .form-select:disabled,
#appConta #dadosPessoais .form-control[disabled],
#appConta #dadosPessoais .form-select[disabled],
#appConta #minhasNotificacoes .form-check-input:disabled {
  background-color: transparent !important;
  background-image: none !important;
  opacity: 1;
  color: #677788;
  cursor: not-allowed;
  box-shadow: none;
}

#appConta #dadosPessoais .input-group-flush .form-control:disabled,
#appConta #dadosPessoais .input-group-flush .form-select:disabled {
  background-color: transparent !important;
}

#appConta .input-group-flush .input-group-text {
  background-color: transparent;
  border-top: none;
  border-right: none;
  border-left: none;
  border-radius: 0;
  color: #97a4af;
  padding-left: 0;
}

#appConta .input-group-flush .btn-ghost-primary,
#appConta .input-group-flush .btn-link,
#appConta .input-group-flush .btn-ghost-danger,
#appConta .input-group-flush .btn-ghost-secondary {
  border: none;
  border-radius: 0;
  align-self: stretch;
  text-decoration: none;
}

#appConta .input-group-flush .btn-icon {
  width: 2.5rem;
  min-width: 2.5rem;
  padding-left: 0;
  padding-right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#appConta .input-group-flush .btn-icon.next-conta-btn-excluir {
  align-self: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  min-width: 2rem;
  padding: 0;
  margin-left: 0.35rem;
  border: none;
  border-radius: 15% !important;
}

#appConta .input-group-flush .btn-ghost-secondary {
  color: #8c98a4;
}

#appConta .input-group-flush .text-success {
  color: #00c9a7 !important;
  background: transparent;
  border: none;
  border-radius: 0;
}

#appConta .next-conta-label-check {
  font-size: 0.95em;
  line-height: 1;
}

#appConta .next-conta-label-info {
  color: #8c98a4;
  line-height: 1;
  font-size: 0.95em;
  min-width: 0;
  height: auto;
  text-decoration: none;
  box-shadow: none !important;
}

#appConta .next-conta-label-info:hover,
#appConta .next-conta-label-info:focus {
  color: var(--bs-primary, #096e97);
  text-decoration: none;
}

#appConta .next-conta-static-field {
  height: auto;
  min-height: calc(1.5em + 1rem + 2px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  background: transparent;
  cursor: default;
  box-shadow: none !important;
}

#appConta .next-conta-brand-img {
  width: 1.25rem;
  height: auto;
  display: block;
}

#appConta .next-conta-switch-wrap {
  border: none !important;
  border-radius: 0;
  align-self: stretch;
  display: flex;
  align-items: center;
}

#appConta #dadosPessoais .form-control:disabled:hover,
#appConta #dadosPessoais .form-control:disabled:active,
#appConta #dadosPessoais .form-control:disabled:focus,
#appConta #dadosPessoais .form-select:disabled:hover,
#appConta #dadosPessoais .form-select:disabled:active,
#appConta #dadosPessoais .form-select:disabled:focus,
#appConta #minhasNotificacoes .form-check-input:disabled:hover,
#appConta #minhasNotificacoes .form-check-input:disabled:active,
#appConta #minhasNotificacoes .form-check-input:disabled:focus {
  cursor: not-allowed;
}

#appConta #minhasNotificacoes .form-check-input:disabled {
  background-color: transparent !important;
  border-color: #d5dde5;
}

#appConta #minhasNotificacoes .form-check:has(.form-check-input:disabled),
#appConta #minhasNotificacoes .form-check:has(.form-check-input:disabled) * {
  cursor: not-allowed;
}

#appConta #minhasNotificacoes .form-switch .form-check-input:disabled {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23677788'/%3e%3c/svg%3e");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Listas — pedido / cortesia item */
#pedidosVue .next-cliente-item,
#appCortesias .next-cliente-item,
#appPedido .next-cliente-item {
  margin-bottom: 0;
}

#pedidosVue .next-cliente-stack,
#pedidosPage .next-cliente-stack,
#appCortesias .next-cliente-stack,
#cortesiasPage .next-cliente-stack {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#pedidosVue .next-cliente-item__row,
#appCortesias .next-cliente-item__row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  column-gap: 0.85rem;
  row-gap: 0.75rem;
  width: 100%;
}

#pedidosVue .next-pagar-order__thumb,
#appCortesias .next-pagar-order__thumb {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.65rem;
  overflow: hidden;
  flex-shrink: 0;
  background: #eef0f7;
}

#pedidosVue .next-pagar-order__thumb img,
#appCortesias .next-pagar-order__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  background: #eef0f7;
}

#appPedido .next-cliente-item__thumb {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  background: #eef2f6;
}

#pedidosVue .next-cliente-item__body,
#appCortesias .next-cliente-item__body {
  min-width: 0;
}

#pedidosVue .next-cliente-item__title,
#appCortesias .next-cliente-item__title,
#appPedido .next-cliente-item__title {
  font-size: 1rem;
  font-weight: 700;
  color: #132144;
  margin: 0 0 0.35rem;
  line-height: 1.3;
}

#pedidosVue .next-cliente-item__meta,
#appCortesias .next-cliente-item__meta {
  font-size: 0.85rem;
  color: #677788;
  line-height: 1.45;
}

#pedidosVue .next-cliente-item__meta i,
#appCortesias .next-cliente-item__meta i {
  margin-right: 0.2rem;
}

#pedidosVue .next-cliente-item__actions,
#appCortesias .next-cliente-item__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
  flex-shrink: 0;
}

#pedidosVue .next-cliente-item__actions .btn,
#appCortesias .next-cliente-item__actions .btn {
  min-width: 9.5rem;
  justify-content: center;
}

#pedidosVue .next-cliente-item__extra {
  grid-column: 1 / -1;
}

#pedidosVue .next-cliente-empty,
#appCortesias .next-cliente-empty {
  text-align: center;
  padding: 3rem 1.5rem;
  color: #677788;
  background: #fff;
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
}

#pedidosVue .next-cliente-empty__icon,
#appCortesias .next-cliente-empty__icon {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(9, 110, 151, 0.08);
  color: var(--bs-primary, #096e97);
  font-size: 1.25rem;
  margin-bottom: 0.75rem;
}

#pedidosVue .next-cliente-empty h2,
#appCortesias .next-cliente-empty h2 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #132144;
  margin: 0 0 0.35rem;
}

#pedidosVue .next-cliente-empty p,
#appCortesias .next-cliente-empty p {
  margin: 0;
  font-size: 0.95rem;
}

#pedidosVue .accordion-item {
  background-color: #f8fafc !important;
  border: 0 !important;
  border-radius: 0.5rem !important;
  margin-bottom: 0.35rem;
}

#appPedido .next-pagar-order__event--solo {
  padding-bottom: 0;
  border-bottom: 0;
}

#pedidoSkel.next-cliente-skel .next-cliente-skel__head {
  margin-bottom: 0;
}

#pedidoSkel .next-cliente-skel__back {
  width: 9rem;
  height: 0.85rem;
  max-width: 40%;
}

#pedidoSkel .next-cliente-skel__title {
  width: 12rem;
  height: 1.5rem;
  max-width: 70%;
}

#pedidoSkel .next-cliente-skel__subtitle {
  width: 8rem;
  height: 0.9rem;
  max-width: 45%;
  margin-bottom: 0;
}

#pedidoSkel .next-cliente-skel__card-title {
  width: 10rem;
  height: 1.05rem;
  max-width: 55%;
}

#pedidoSkel .next-cliente-skel__card-sub {
  width: 14rem;
  height: 0.8rem;
  max-width: 70%;
  margin-bottom: 0;
}

#pedidoSkel .next-cliente-skel__thumb {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.65rem;
  flex-shrink: 0;
  display: block;
}

#pedidoSkel .next-cliente-skel__meta {
  width: 11rem;
  height: 0.75rem;
  max-width: 85%;
}

#pedidoSkel .next-cliente-skel__badge {
  width: 6.5rem;
  height: 0.7rem;
  max-width: 40%;
}

#pedidoSkel .next-cliente-skel__price {
  width: 5rem;
  height: 1.05rem;
  max-width: 30%;
}

#pedidoSkel .next-cliente-skel__ticket {
  padding: 1rem 0;
  border-bottom: 1px solid var(--bs-border-color, #eef0f7);
}

#pedidoSkel .next-cliente-skel__ticket:first-child {
  padding-top: 0;
}

#pedidoSkel .next-skel-btn {
  width: 9.5rem;
  height: 2.375rem;
  border-radius: 0.5rem;
  margin-top: 0;
  max-width: 100%;
}

#pedidoSkel .next-cliente-skel__btn-sm {
  width: 7.5rem;
}

#pedidoSkel .next-cliente-skel__totals {
  padding-top: 1rem;
  margin-top: 0.25rem;
}

#pedidoSkel .next-cliente-skel__total-label {
  width: 5.5rem;
  height: 0.85rem;
  max-width: 40%;
  margin-bottom: 0;
}

#pedidoSkel .next-cliente-skel__total-val {
  width: 4rem;
  height: 0.85rem;
  max-width: 30%;
  margin-bottom: 0;
}

#pedidoSkel .next-cliente-skel__total-pay {
  margin-top: 0.5rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--bs-border-color, #eef0f7);
}

#pedidoSkel .next-cliente-skel__total-label.is-pay,
#pedidoSkel .next-cliente-skel__total-val.is-pay {
  height: 1.15rem;
}

#pedidoSkel .next-cliente-skel__total-val.is-pay {
  width: 5.5rem;
}

#pedidoSkel .next-cliente-skel__pay-icon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  flex-shrink: 0;
  display: block;
}

#pedidoSkel .next-cliente-skel__amount {
  width: 7.5rem;
  height: 1.35rem;
  max-width: 50%;
}

#pedidoSkel .next-cliente-skel__status {
  width: 9rem;
  height: 0.9rem;
  max-width: 55%;
}

#appPedido .next-pagar-order__thumb img {
  background: var(--bs-secondary-bg, #eef0f7);
}

#appPedido .next-cliente-stack {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#appPedido .next-pagar-panel {
  margin: 0 !important;
}

#appPedido .next-pagar-order__item {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  column-gap: 1rem;
  row-gap: 0.75rem;
}

#appPedido .next-cliente-ticket__body {
  min-width: 0;
}

#appPedido .next-cliente-ticket-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
  margin-top: 0;
  flex-shrink: 0;
}

#appPedido .next-cliente-ticket-actions .btn {
  min-width: 9.5rem;
  justify-content: center;
}

#appPedido .next-cliente-assignee,
#appPedido .next-cliente-checkin {
  grid-column: 1 / -1;
}

#appPedido .next-cliente-assignee {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-top: 0;
  width: 100%;
  padding: 0.7rem 0.85rem;
  border: 1px solid rgba(19, 33, 68, 0.08);
  border-radius: 0.65rem;
  background: #f7f9fc;
}

#appPedido .next-cliente-assignee__avatar {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(9, 110, 151, 0.1);
  color: var(--bs-primary, #096e97);
  font-size: 1rem;
  line-height: 1;
}

#appPedido .next-cliente-assignee__meta {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}

#appPedido .next-cliente-assignee__label {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #8c98a4;
  line-height: 1.2;
}

#appPedido .next-cliente-assignee__name {
  font-size: 0.925rem;
  font-weight: 650;
  color: #132144;
  line-height: 1.3;
  word-break: break-word;
}

#appPedido .next-cliente-assignee__email {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.8125rem;
  color: #677788;
  line-height: 1.35;
  word-break: break-all;
}

#appPedido .next-cliente-assignee__email .bi {
  flex-shrink: 0;
  font-size: 0.85rem;
  opacity: 0.75;
}

#appPedido .next-cliente-checkin {
  margin-top: 0.5rem;
  color: #00a650;
  font-size: 0.875rem;
  font-weight: 600;
}

#appPedido .next-cliente-pay {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  column-gap: 1rem;
  row-gap: 0.75rem;
}

#appPedido .next-cliente-pay__icon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(9, 110, 151, 0.08);
  color: var(--bs-primary, #096e97);
  font-size: 1.15rem;
  line-height: 1;
}

#appPedido .next-cliente-pay__icon img {
  width: 1.35rem;
  height: 1.35rem;
  object-fit: contain;
  display: block;
}

#appPedido .next-cliente-pay__icon .fa-pix {
  color: #00b7a9;
}

#appPedido .next-cliente-pay__body {
  min-width: 0;
}

#appPedido .next-cliente-pay__amount {
  font-size: 1.25rem;
  font-weight: 800;
  color: #132144;
  line-height: 1.2;
}

#appPedido .next-cliente-pay__meta {
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: #677788;
  line-height: 1.45;
}

#appPedido .next-cliente-pay__status {
  margin-top: 0.85rem;
  font-weight: 600;
}

/* Status de pagamento (lista + detalhe) */
.next-pay-status {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.3;
}
.next-pay-status .bi {
  font-size: 1rem;
  line-height: 1;
}
.next-pay-status--ok { color: #00a650; }
.next-pay-status--pending { color: #d4a017; }
.next-pay-status--analysis { color: #096e97; }
.next-pay-status--ko { color: #ed4c78; }
.next-pay-status--muted { color: #8c98a4; }

#appPedido .next-cliente-pay__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
  margin-top: 0;
  flex-shrink: 0;
}

#appPedido .next-cliente-pay__actions .btn {
  min-width: 9.5rem;
  justify-content: center;
}

#appPedido .next-cliente-pay__hint {
  grid-column: 1 / -1;
}

#appPedido .next-cliente-pay__pix {
  margin-top: 0.85rem;
}

#appPedido .next-cliente-back {
  margin-bottom: 0.35rem;
}

@media (max-width: 767.98px) {
  #appConta,
  #pedidosVue,
  #appPedido,
  #appCortesias,
  #appAjuda,
  #appOrganizador,
  #pedidoPage,
  #pedidosPage,
  #cortesiasPage {
    padding-top: 1rem;
    padding-bottom: 3rem;
  }

  #pedidosVue .next-cliente-item__actions,
  #appCortesias .next-cliente-item__actions {
    width: 100%;
    margin-top: 0;
  }

  #pedidosVue .next-cliente-item__actions .btn,
  #appCortesias .next-cliente-item__actions .btn {
    width: 100%;
  }

  #pedidosVue .next-cliente-item__row,
  #appCortesias .next-cliente-item__row {
    grid-template-columns: auto 1fr;
  }

  #pedidosVue .next-cliente-item__actions,
  #appCortesias .next-cliente-item__actions {
    grid-column: 1 / -1;
  }

  #appPedido .next-pagar-order__item {
    grid-template-columns: 1fr;
  }

  #appPedido .next-cliente-pay {
    grid-template-columns: auto 1fr;
  }

  #appPedido .next-cliente-ticket-actions,
  #appPedido .next-cliente-pay__actions {
    width: 100%;
    grid-column: 1 / -1;
  }

  #appPedido .next-cliente-ticket-actions .btn,
  #appPedido .next-cliente-pay__actions .btn {
    width: 100%;
    min-width: 0;
  }
}

/* ========== Central de Ajuda — #appAjuda ========== */
#appAjuda.next-ajuda {
  overflow-anchor: none;
}

#appAjuda .next-cliente-stack {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#appAjuda .next-ajuda-section {
  margin: 0;
  scroll-margin-top: calc(var(--next-navbar-height, 4.75rem) + 1rem);
}

#appAjuda .next-ajuda-contacts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 0.75rem;
  align-items: stretch;
}

#appAjuda .next-ajuda-contact {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid rgba(19, 33, 68, 0.08);
  background: #fff;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.04);
  text-decoration: none;
  color: inherit;
  min-width: 0;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

#appAjuda .next-ajuda-contact:hover {
  border-color: rgba(9, 110, 151, 0.35);
  box-shadow: 0 0.35rem 1.1rem rgba(19, 33, 68, 0.08);
}

#appAjuda .next-ajuda-contact__icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(9, 110, 151, 0.08);
  color: var(--bs-primary, #096e97);
  font-size: 1.1rem;
}

#appAjuda .next-ajuda-contact__text {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
}

#appAjuda .next-ajuda-contact__text strong {
  font-size: 0.925rem;
  font-weight: 700;
  color: #132144;
  line-height: 1.25;
}

#appAjuda .next-ajuda-contact__text small {
  font-size: 0.8rem;
  color: #677788;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#appAjuda .next-ajuda-contact__cta {
  align-self: center;
  white-space: nowrap;
  min-height: 2.75rem;
}

#appAjuda .next-ajuda-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

#appAjuda .next-ajuda-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.85rem;
  border-radius: 0.5rem;
  border: 1px solid rgba(19, 33, 68, 0.1);
  background: #f7f9fc;
  color: #132144;
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.2;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

#appAjuda .next-ajuda-chip:hover {
  background: rgba(9, 110, 151, 0.08);
  border-color: rgba(9, 110, 151, 0.28);
  color: var(--bs-primary, #096e97);
}

#appAjuda .next-ajuda-chip .bi {
  font-size: 0.95rem;
  opacity: 0.85;
}

#appAjuda .next-ajuda-accordion .accordion-item {
  border: 0;
  border-bottom: 1px solid rgba(19, 33, 68, 0.08);
  background: transparent;
}

#appAjuda .next-ajuda-accordion .accordion-item:last-child {
  border-bottom: 0;
}

#appAjuda .next-ajuda-accordion .accordion-button {
  font-size: 0.95rem;
  font-weight: 600;
  color: #132144;
  background: #fff;
  box-shadow: none;
  padding: 1rem 1.25rem;
}

#appAjuda .next-ajuda-accordion .accordion-button:not(.collapsed) {
  color: var(--bs-primary, #096e97);
  background: rgba(9, 110, 151, 0.04);
  box-shadow: none;
}

#appAjuda .next-ajuda-accordion .accordion-button:focus {
  box-shadow: none;
  border-color: transparent;
}

#appAjuda .next-ajuda-accordion .accordion-button::after {
  background-size: 1rem;
}

#appAjuda .next-ajuda-accordion .accordion-body {
  padding: 0.25rem 1.25rem 1.15rem;
  font-size: 0.925rem;
  color: #677788;
  line-height: 1.55;
}

#appAjuda .next-ajuda-accordion .accordion-body p,
#appAjuda .next-ajuda-accordion .accordion-body li {
  color: #677788;
}

#appAjuda .next-ajuda-accordion .accordion-body strong,
#appAjuda .next-ajuda-accordion .accordion-body b {
  color: #132144;
}

#appAjuda .next-ajuda-link {
  color: var(--bs-primary, #096e97);
  font-weight: 650;
  text-decoration: none;
}

#appAjuda .next-ajuda-link:hover {
  color: #0a5675;
  text-decoration: underline;
}

#appAjuda .next-ajuda-accordion .accordion-body img {
  max-width: 100%;
  height: auto;
  border-radius: 0.5rem;
  margin-top: 0.5rem;
}

@media (max-width: 991.98px) {
  #appAjuda .next-ajuda-contacts {
    grid-template-columns: 1fr 1fr;
  }

  #appAjuda .next-ajuda-contact__cta {
    grid-column: 1 / -1;
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  #appAjuda .next-ajuda-contacts {
    grid-template-columns: 1fr;
  }
}

/* ========== Página do organizador — /p/{alias} ========== */
#appOrganizador .next-org-profile {
  border-radius: 0.75rem;
  box-shadow: 0 0.25rem 1rem rgba(19, 33, 68, 0.06);
  background: #fff;
  overflow: hidden;
}

#appOrganizador .next-org-profile__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.25rem 1.75rem;
  padding: 1.5rem !important;
}

#appOrganizador .next-org-profile__avatar {
  flex: 0 0 auto;
  width: 7.5rem;
  height: 7.5rem;
  border-radius: 50%;
  overflow: hidden;
  background: var(--bs-secondary-bg, #f8fafc);
  box-shadow: 0 0 0 0.2rem rgba(9, 110, 151, 0.12);
}

#appOrganizador .next-org-profile__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#appOrganizador .next-org-profile__body {
  flex: 1 1 14rem;
  min-width: 0;
}

#appOrganizador .next-org-profile__eyebrow {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #677788;
  margin: 0;
}

#appOrganizador .next-org-profile__title {
  font-size: clamp(1.35rem, 2.5vw, 1.85rem);
  font-weight: 700;
  color: var(--bs-heading-color, #1e2022);
  margin: 0 0 0.35rem;
  line-height: 1.25;
}

#appOrganizador .next-org-profile__desc {
  font-size: 0.95rem;
  line-height: 1.5;
  max-width: 40rem;
}

#appOrganizador .next-org-profile__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

#appOrganizador .next-org-chips,
#appSeller .next-org-chips {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.3rem;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 0.15rem 0.65rem rgba(19, 33, 68, 0.06);
}

#appOrganizador .next-org-chip,
#appSeller .next-org-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 0.9rem;
  border-radius: 999px;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 550;
  color: #677788;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}

#appOrganizador .next-org-chip:hover,
#appSeller .next-org-chip:hover {
  color: var(--bs-primary, #096e97);
  background: rgba(9, 110, 151, 0.08);
}

#appOrganizador .next-org-chip.is-active,
#appSeller .next-org-chip.is-active {
  color: #fff;
  background: var(--bs-primary, #096e97);
}

@media (max-width: 575.98px) {
  #appOrganizador .next-org-profile__inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.25rem !important;
  }

  #appOrganizador .next-org-profile__actions {
    justify-content: center;
  }

  #appOrganizador .next-org-chips,
  #appSeller .next-org-chips {
    width: 100%;
    justify-content: center;
  }
}

/* —— Promoter / Seller (PDV) namespaces —— */
#appPromoter,
#appSeller,
#appPromoterVendas,
#appSellerRelatorio {
  max-width: var(--next-area-max, 90rem);
}

#appPromoterVendas .nav-tabs .nav-link,
#appSellerRelatorio .nav-tabs .nav-link {
  font-weight: 600;
  color: #677788;
}

#appPromoterVendas .nav-tabs .nav-link.active {
  color: var(--bs-primary, #096e97);
}

#appPromoterVendas .next-stat-card {
  min-width: 10rem;
}

#appSeller .event-card .btn + .btn,
#appPromoter .event-card .btn + .btn {
  margin-top: 0;
}

/* Overlay de status (evento encerrado, etc.) */
.next-block-overlay.block-shadow,
.next-block-overlay {
  position: fixed;
  inset: 0;
  z-index: 1055;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  margin: 0;
  width: 100%;
  height: 100%;
  background: rgba(19, 33, 68, 0.48);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  text-align: center;
  overflow: auto;
  opacity: 1;
  filter: none;
  font-weight: inherit;
  color: inherit;
}

html.next-block-open,
html.next-block-open body {
  overflow: hidden;
}

.next-block-card {
  width: 100%;
  max-width: 26rem;
  margin: auto;
  background: #fff;
  border: 1px solid #e7eaf3;
  border-radius: 0.75rem;
  box-shadow: 0 1rem 2.5rem rgba(19, 33, 68, 0.18);
  padding: 2rem 1.75rem 1.75rem;
  text-align: center;
}

.next-block-card__icon {
  width: 3.25rem;
  height: 3.25rem;
  margin: 0 auto 1rem;
  border-radius: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  line-height: 1;
  background: rgba(245, 202, 153, 0.22);
  color: #b7791f;
}

.next-block-card__icon.is-danger {
  background: rgba(var(--bs-danger-rgb), 0.12);
  color: var(--bs-danger);
}

.next-block-card__icon.is-info {
  background: rgba(var(--bs-primary-rgb), 0.12);
  color: var(--bs-primary);
}

.next-block-card__icon.is-success {
  background: rgba(var(--bs-success-rgb), 0.12);
  color: var(--bs-success);
}

.next-block-card__title {
  margin: 0 0 0.5rem;
  font-size: 1.25rem;
  font-weight: 700;
  color: #1e2022;
  line-height: 1.3;
}

.next-block-card__text {
  margin: 0 0 1.35rem;
  font-size: 0.95rem;
  color: #677788;
  line-height: 1.5;
}

.next-block-card__actions .btn {
  min-width: 10rem;
}
