.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-container.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-container .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-32965 .elementor-element.elementor-element-a0274fb{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-shortcode .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-shortcode.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-shortcode .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-shortcode .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-shortcode .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}#elementor-popup-modal-32965 .dialog-widget-content{animation-duration:0.5s;border-radius:20px 20px 20px 20px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-32965{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-32965 .dialog-message{width:1000px;height:90vh;align-items:flex-start;padding:050px 20px 50px 20px;}#elementor-popup-modal-32965 .dialog-close-button{display:flex;font-size:36px;}#elementor-popup-modal-32965 .dialog-close-button i{color:#000000;}#elementor-popup-modal-32965 .dialog-close-button svg{fill:#000000;}@media(max-width:767px){.elementor-32965 .elementor-element.elementor-element-a0274fb{--content-width:100%;}#elementor-popup-modal-32965 .dialog-message{width:95vw;height:90vh;}}/* Start custom CSS *//* ================================
   TJCC Popup — design system
================================ */
.tjcc-pop {
  --tjcc-bg: #ffffff;
  --tjcc-fg: #0f172a;         /* slate-900 */
  --tjcc-muted: #475467;      /* slate-600 */
  --tjcc-border: #e5e7eb;     /* gray-200 */
  --tjcc-accent: #F933FF;
  --tjcc-gap: 1rem;
  --tjcc-radius: 16px;

  color: var(--tjcc-fg);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  max-width: 100% !important;
  box-sizing: border-box;
}
.tjcc-pop *, .tjcc-pop *::before, .tjcc-pop *::after { box-sizing: inherit; }

/* ================================
   Header
================================ */
.tjcc-pop .header-modal-1 {
  display: grid;
  gap: calc(var(--tjcc-gap) * 1.25);
  background: var(--tjcc-bg);
}

.tjcc-pop .header-modal-titulo {
  display: grid;
  gap: .5rem;
  background: #390047;
  padding: 20px;
  border-radius: 20px;
  text-transform: uppercase;
}

#eixo-box{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  vertical-align: middle;
  color: #fff;
  font-size: 0.8em;
  flex-wrap: wrap;              /* não estoura em telas pequenas */
}

.tjcc-pop .pop-eixo{
  display: inline-flex;
  flex-wrap: wrap;
  width: auto;                  /* evita estourar no mobile */
  max-width: 100%;
  white-space: normal;
  padding: .25rem .6rem;
  border-radius: 999px;
  background: var(--tjcc-accent);
  color: #fff;
  font-weight: 800;
  font-size: 0.8em;
  line-height: 1em;
}

.tjcc-pop .pop-title {
  margin: 0;
  font-size: 1.2em;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #fff;
  hyphens: auto;
  overflow-wrap: anywhere;
}

/* ================================
   Meta (data / horário / sala / organizador)
================================ */
.tjcc-pop .header-modal-meta {
  display: grid;
  gap: .75rem;
  grid-template-columns: repeat(2, minmax(0,1fr));
}
@media (min-width: 720px) {
  .tjcc-pop .header-modal-meta {
    grid-template-columns: repeat(4, minmax(0,1fr));
  }
}
.tjcc-pop .header-modal-meta > div {
  position: relative;
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .65rem .75rem;
  border: 1px solid var(--tjcc-border);
  border-radius: 12px;
  background: color-mix(in oklab, var(--tjcc-bg) 92%, white);
  font-size: .95rem;
  color: var(--tjcc-muted);
  min-width: 0;                 /* permite encolher dentro da coluna */
}
.tjcc-pop .header-modal-meta > div i[class*="fa-"] {
  font-size: 1rem;
  opacity: .9;
  color: var(--tjcc-accent);
  width: 1.15rem;
  text-align: center;
  flex: 0 0 auto;
}
.tjcc-pop .header-modal-meta > div .label,
.tjcc-pop .header-modal-meta > div .val {
  min-width: 0;
}
.tjcc-pop .header-modal-meta > div .val {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;          /* mude para normal se quiser quebra de linha */
}

/* Emojis como fallback caso não tenha <i> (opcional) */
.tjcc-pop .pop-data:not(:has(i))::before,
.tjcc-pop .pop-horario:not(:has(i))::before,
.tjcc-pop .pop-sala:not(:has(i))::before,
.tjcc-pop .pop-organizador:not(:has(i))::before {
  display: inline-block;
  width: 1.15rem;
  margin-right: .4rem;
  text-align: center;
}
.tjcc-pop .pop-data:not(:has(i))::before        { content: "📅"; }
.tjcc-pop .pop-horario:not(:has(i))::before     { content: "⏰"; }
.tjcc-pop .pop-sala:not(:has(i))::before        { content: "📍"; }
.tjcc-pop .pop-organizador:not(:has(i))::before { content: "⭐"; }

/* ================================
   Descrição / Conteúdo
================================ */
.tjcc-pop .modal-content-geral {
  display: grid;
  gap: 1rem;
  border: 1px solid var(--tjcc-border);
  border-radius: 14px;
  padding: 1rem .95rem;
  background: color-mix(in oklab, var(--tjcc-bg) 96%, white);
  color: var(--tjcc-fg);
}
.tjcc-pop .modal-content-geral span {
  font-weight: 700;
  text-transform: uppercase;
}
.tjcc-pop .pop-descricao p { margin: .5rem 0; font-size: 0.9em; }

/* ================================
   Relacionados (cards)
================================ */
.modal-content-geral .media { width: 40px !important; height: 40px !important; }
.modal-content-geral .tjcc-rel-card .media { flex: none; }
.modal-content-geral .tjcc-rel-card .name {
  font-size: 0.8em; margin: 0; padding: 0; line-height: 1em;
}
.modal-content-geral .tjcc-rel-card .cargo {
  font-size: 0.7em; line-height: 0.95em;
}
.modal-content-geral h3 {
  font-size: 1em; font-weight: 600; margin-top: 20px !important;
}
.modal-content-geral .tjcc-rel-card {
  box-shadow: 10px 10px 25px -15px rgba(0,0,0,0.75);
  -webkit-box-shadow: 10px 10px 25px -15px rgba(0,0,0,0.75);
  -moz-box-shadow: 10px 10px 25px -15px rgba(0,0,0,0.75);
  padding: 10px; border-radius: 10px; background: #f8f8f8;
}
.tjcc-rel-list { gap: .4rem; }
.tjcc-mini-bio-btn {
  display: inline;
  width: max-content;
  cursor: pointer;
  border: 1px solid #ddd;
  padding: .35rem .6rem;
  border-radius: 8px;
  font-size: 0.7em;
  line-height: 1;
  background: #fff;
}

/* ================================
   Logos
================================ */
.tjcc-pop .pop-logos { margin-top: .5rem; }
.tjcc-pop .pop-logos-list {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-wrap: wrap; gap: .75rem; align-items: center;
}
.tjcc-pop .pop-logos-list .pop-logo-item {
  display: grid; place-items: center;
  padding: .4rem .6rem;
  border: 1px dashed var(--tjcc-border);
  border-radius: 10px;
  background: color-mix(in oklab, var(--tjcc-bg) 96%, white);
}
.tjcc-pop .pop-logos-list img {
  max-height: 40px; width: auto; display: block;
  filter: saturate(.9);
  transition: filter .2s ease, transform .2s ease;
  max-width: 100%;
}
.tjcc-pop .pop-logos-list img:hover { filter: saturate(1.1); transform: translateY(-1px); }

/* ================================
   Mini-bio Overlay
================================ */
.tjcc-mini-overlay {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 999999;
  pointer-events: none;                   /* evita “capturar” cliques quando fechado */
}
.tjcc-mini-overlay.is-open { display: flex; }
.tjcc-mini-overlay .tjcc-mini-backdrop,
.tjcc-mini-overlay .tjcc-mini-sheet { pointer-events: auto; }

.tjcc-mini-overlay .tjcc-mini-backdrop {
  position: absolute; inset: 0;
  background: rgba(0,0,0,.45);
}

.tjcc-mini-overlay .tjcc-mini-sheet {
  position: relative;
  width: min(800px, 80vw);
  max-height: min(80vh, 900px);
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr;
  color: #000;
}

.tjcc-mini-overlay .tjcc-mini-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid #e5e7eb;
}
.tjcc-mini-overlay .tjcc-mini-title {
  margin: 0; font-size: 0.9em; font-weight: 700; color: #000;
}
.tjcc-mini-overlay .tjcc-mini-close {
  border: 0; background: transparent; cursor: pointer;
  font-size: 30px; line-height: 1; padding: 4px 8px;
}
.tjcc-mini-overlay .tjcc-mini-body { padding: 16px; overflow: auto; line-height: 1.6; }

/* ======= Mobile: NÃO ocupar 100% para permitir fechar tocando fora ======= */
@media (max-width: 640px){
  .tjcc-mini-overlay .tjcc-mini-sheet{
    width: 92vw !important;
    max-width: 92vw !important;
    height: auto !important;
    max-height: 88dvh !important;
    margin: 4dvh auto !important;
    border-radius: 12px !important;
  }
  .tjcc-mini-overlay .tjcc-mini-head{
    padding-top: max(14px, env(safe-area-inset-top));
  }
  .tjcc-mini-overlay .tjcc-mini-close{
    position: absolute;
    top: max(8px, env(safe-area-inset-top));
    right: 8px;
    z-index: 2;
  }
}

/* ================================
   Pequenos refinamentos / limites
================================ */
#fix-organizador1 { font-size: 1em; margin-bottom: -20px !important; font-weight: 600; }

/* Mídias não estouram */
.tjcc-pop img, .tjcc-pop svg, .tjcc-pop video, .tjcc-pop iframe {
  max-width: 100%; height: auto;
}

/* Clipa qualquer “vazamento” dentro do container do popup do Elementor */
@media (max-width: 640px){
  .elementor-popup-modal .dialog-widget-content{ overflow-x: hidden; }
}/* End custom CSS */