/* Eventos - GuiaWP | front */
.agw{--agw-radius:.75rem;--agw-gap:1rem}
.agw-encerrado{opacity:.72}

/* ---- Formulário do organizador: cobrança (seção 4) e pontos de venda (seção 5) ----
   O resto do formulário usa as classes Tailwind já compiladas no core. Estes componentes
   ficam em CSS próprio porque o JS os RECONSTRÓI (matriz de preços, checkboxes) e uma
   classe utilitária que não exista no build do core sairia sem efeito. A cor segue o token
   do tema (--gcep-color-primary). */

.agw-modo{display:flex;gap:.5rem;align-items:flex-start;padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:.75rem;background:#fff;cursor:pointer;transition:border-color .15s,background-color .15s}
.agw-modo:hover{border-color:#cbd5e1;background:#f8fafc}
.agw-modo input{margin-top:.2rem;accent-color:var(--gcep-color-primary,#0f5132)}
.agw-modo-txt{display:flex;flex-direction:column;gap:.125rem;min-width:0}
.agw-modo-txt strong{font-size:.8125rem;font-weight:700;color:#0f172a}
.agw-modo-txt span{font-size:.6875rem;line-height:1.3;color:#64748b}
.agw-modo:has(input:checked){border-color:var(--gcep-color-primary,#0f5132);background:#f5f8ff}
.agw-modo:focus-within{outline:2px solid rgba(15, 81, 50,.25);outline-offset:1px}

.agw-grid-fase{display:grid;grid-template-columns:1fr;gap:.5rem;align-items:end}
@media (min-width:640px){.agw-grid-fase{grid-template-columns:1fr 1fr auto}}

.agw-precos{display:flex;flex-wrap:wrap;gap:.5rem}
.agw-preco{display:flex;flex-direction:column;gap:.25rem;min-width:8.5rem}
.agw-preco>span{font-size:.6875rem;font-weight:600;color:#64748b}
.agw-dinheiro{width:100%;max-width:10rem;border:1px solid #cbd5e1;border-radius:.5rem;padding:.5rem .625rem;font-size:.875rem;color:#0f172a;background:#fff;outline:none}
.agw-dinheiro:focus{border-color:var(--gcep-color-primary,#0f5132);box-shadow:0 0 0 3px rgba(15, 81, 50,.15)}
.agw-dinheiro:disabled{background:#f1f5f9;color:#94a3b8}

.agw-checks{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.375rem}
.agw-check{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border:1px solid #e2e8f0;border-radius:999px;background:#fff;font-size:.75rem;color:#334155;cursor:pointer}
.agw-check input{accent-color:var(--gcep-color-primary,#0f5132)}
.agw-check:has(input:checked){border-color:var(--gcep-color-primary,#0f5132);background:#f5f8ff;color:#0f172a}
.agw-check--sem-id{opacity:.55;cursor:not-allowed}
.agw-vazio{font-size:.6875rem;color:#94a3b8;margin:.375rem 0 0}

.agw-btn-remover{align-self:start;font-size:.75rem;font-weight:600;color:#e11d48;background:none;border:0;padding:0;cursor:pointer}
.agw-btn-remover:hover{text-decoration:underline}

.agw-money{display:flex;align-items:center;gap:.5rem}

/* Programação por horário dentro de cada dia (14/09/2026). */
.agw-prog{display:flex;flex-direction:column;gap:.5rem;padding-top:.25rem;border-top:1px dashed #e2e8f0}
.agw-prog__lista{display:flex;flex-direction:column;gap:.5rem}
.agw-prog__lista:empty{display:none}
.agw-prog__item{display:grid;grid-template-columns:1fr;gap:.5rem;padding:.625rem;border:1px solid #e2e8f0;border-radius:.625rem;background:#fff}
@media (min-width:640px){.agw-prog__item{grid-template-columns:7.5rem minmax(0,1fr) minmax(0,1fr) auto;align-items:end}}
.agw-prog__remover{min-height:44px}
[data-prog-add]{align-self:flex-start}
.agw-money-pre{font-size:.8125rem;font-weight:700;color:#64748b}

/* ---- Galeria, prévia de SEO e uploader (seções 7 e 8 do formulário) ---- */

.agw-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem;margin-bottom:.75rem}
.agw-foto{position:relative;margin:0;border:1px solid #e2e8f0;border-radius:.625rem;overflow:hidden;background:#f8fafc;aspect-ratio:4/3;cursor:grab}
.agw-foto img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.agw-foto--arrastando{opacity:.4;cursor:grabbing}
.agw-foto-capa{display:none;position:absolute;left:.375rem;bottom:.375rem;padding:.125rem .375rem;border-radius:999px;background:var(--gcep-color-primary,#0f5132);color:#fff;font-size:.625rem;font-weight:700;letter-spacing:.02em}
.agw-foto--capa .agw-foto-capa{display:block}
.agw-foto--capa{border-color:var(--gcep-color-primary,#0f5132);box-shadow:0 0 0 2px rgba(15, 81, 50,.18)}
.agw-foto-x{position:absolute;top:.25rem;right:.25rem;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:rgba(15,23,42,.65);color:#fff;font-size:1rem;line-height:1;cursor:pointer}
.agw-foto-x:hover{background:#e11d48}

.agw-upload{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border:1px dashed #cbd5e1;border-radius:.625rem;font-size:.8125rem;font-weight:700;color:#475569;cursor:pointer;background:#fff}
.agw-upload:hover{border-color:var(--gcep-color-primary,#0f5132);color:var(--gcep-color-primary,#0f5132)}
.agw-galeria--cheia .agw-upload{opacity:.5;cursor:not-allowed}
.agw-galeria--enviando{opacity:.7;pointer-events:none}

.agw-previa{display:flex;flex-direction:column;gap:.125rem;padding:.875rem 1rem;border:1px solid #e2e8f0;border-radius:.75rem;background:#fff}
.agw-previa-url{font-size:.75rem;color:#0f766e}
.agw-previa-titulo{font-size:1.0625rem;line-height:1.35;color:#1a0dab}
.agw-previa-desc{font-size:.8125rem;line-height:1.45;color:#4d5156}
.agw-previa--auto{color:#94a3b8;font-style:italic}
.agw-contador--longo{color:#e11d48;font-weight:700}

/* ---- Listagem pública /eventos/ ----
   Mesma estrutura de /imoveis e /veiculos: coluna de filtros à esquerda (off-canvas no celular)
   e grade à direita. O CARD não tem CSS próprio — usa as classes do site, como os outros.
   14/09/2026 (correção da auditoria, E1): daqui para baixo, o que aparece na lista pública e na
   página do evento usa os tokens da casca (--mg-*, gcep-casca.css), com o valor da paleta de reserva
   para as telas em que a casca não carrega. As cores do Tailwind (#0f172a, #334155, #475569, #64748b,
   #94a3b8, #e2e8f0, #f1f5f9, #25d366, #e11d48) saíram. O formulário do organizador, acima, fica. */

.agw-list{display:flex;gap:2rem;align-items:flex-start}
.agw-list__side{flex:0 0 300px}
.agw-list__main{flex:1 1 0;min-width:0}
.agw-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}
.agw-filter-btn{display:none}
.agw-side__close{display:none}
.agw-side__overlay{display:none}
@media(max-width:900px){
	.agw-list{flex-direction:column}
	.agw-filter-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-bottom:1.25rem}
	.agw-list__side{position:fixed;top:0;left:0;bottom:0;width:88%;max-width:360px;z-index:80;transform:translateX(-100%);transition:transform .3s ease;overflow-y:auto;background:var(--mg-suave,#f5f2ec);padding:1rem;box-shadow:0 10px 40px rgba(11, 58, 37,.25)}
	.agw-list__side.is-open{transform:translateX(0)}
	.agw-side__close{display:inline-flex;align-items:center;justify-content:center;position:absolute;top:1.35rem;right:1.35rem;z-index:3;width:2rem;height:2rem;border-radius:9999px;background:#fff;border:1px solid var(--mg-borda-campo,#e5e0d6);color:var(--mg-texto-2,#5a6660);cursor:pointer}
	.agw-side__close:hover{color:var(--mg-marinho,#0b3a25);border-color:var(--mg-borda-hover,#b9dcc8)}
	.agw-side__close:focus-visible{outline:2px solid var(--mg-azul,#0f5132);outline-offset:2px}
	.agw-side__close:active{transform:scale(var(--mg-ativo-escala,.97));background:var(--mg-ativo-fundo,#e5f1e9)}
	.agw-side__overlay{display:block;position:fixed;inset:0;background:rgba(11, 58, 37,.5);z-index:79;opacity:0;pointer-events:none;transition:opacity .3s}
	.agw-side__overlay.is-open{opacity:1;pointer-events:auto}
	body.agw-filter-open{overflow:hidden}
}

/* Separador do histórico, na mesma grade. */
.agw-lista__ja{margin:2.25rem 0 1rem;font-size:1.0625rem;font-weight:800;color:var(--mg-texto,#3d4a43);display:flex;align-items:center;gap:.75rem}
.agw-lista__ja::after{content:"";flex:1;border-top:1px solid var(--mg-borda-campo,#e5e0d6)}

/* Usadas fora da listagem: a página do evento e os painéis. */
.agw-campo{display:flex;align-items:center;gap:.5rem;border:1px solid var(--mg-borda-campo,#e5e0d6);border-radius:.625rem;padding:.5rem .75rem;background:var(--mg-fundo,#f9f6f1);min-width:0}
.agw-campo .material-symbols-outlined{font-size:20px;color:var(--mg-separador,#a5aea8)}
.agw-campo .agw-campo__ico{width:18px;height:18px;flex:none;fill:none;stroke:var(--mg-separador,#a5aea8);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.agw-campo input,.agw-campo select{border:0;background:transparent;outline:none;font-size:.875rem;color:var(--mg-marinho,#0b3a25);width:100%;min-width:0}
.agw-campo:hover{border-color:var(--mg-borda-hover,#b9dcc8)}
.agw-campo:focus-within{border-color:var(--mg-azul,#0f5132);box-shadow:0 0 0 3px rgba(15, 81, 50,.15)}
/* [hidden] tem de vencer o display:flex do campo. */
.agw-campo[hidden]{display:none}
.agw-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1.125rem;border:0;border-radius:var(--mg-raio-botao,10px);background:var(--mg-azul,#0f5132);color:#fff;font-size:.8125rem;font-weight:700;cursor:pointer;text-decoration:none}
.agw-btn:hover{background:var(--mg-azul-hover,#0b3f27);color:#fff}
.agw-btn:focus-visible{outline:2px solid var(--mg-marinho,#0b3a25);outline-offset:2px}
.agw-btn:active{transform:scale(var(--mg-ativo-escala,.97))}
.agw-btn--limpo{background:#fff;color:var(--mg-texto-2,#5a6660);border:1px solid var(--mg-borda-campo,#e5e0d6)}
.agw-btn--limpo:hover{background:var(--mg-suave,#f5f2ec);color:var(--mg-marinho,#0b3a25)}

/* Paginação simples do painel do organizador e dos filtros do admin. */
.agw-paginacao{display:flex;flex-wrap:wrap;gap:.375rem;justify-content:center;margin-top:2rem}
.agw-pag{min-width:2.25rem;padding:.375rem .625rem;border:1px solid #e2e8f0;border-radius:.5rem;text-align:center;font-size:.8125rem;font-weight:700;color:#475569;text-decoration:none;background:#fff}
.agw-pag:hover{border-color:var(--gcep-color-primary,#0f5132);color:var(--gcep-color-primary,#0f5132)}
.agw-pag--atual{background:var(--gcep-color-primary,#0f5132);border-color:var(--gcep-color-primary,#0f5132);color:#fff}

/* ---- Página do evento /evento/{slug}/ ---- */

/* A casca da pagina do evento agora e a mesma de /imoveis e /veiculos, montada com as classes
 do tema (grade de 3 colunas, cartoes brancos e coluna fixa). O que sobra aqui embaixo e so o
 CONTEUDO proprio do evento: programacao, pontos de venda e o bloco de ingressos. */

.agw-programacao ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.agw-programacao li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.625rem .75rem;border:1px solid var(--mg-borda-campo,#e5e0d6);border-radius:.625rem;background:#fff}
/* capitalize deixaria "Sex, 18 De Setembro": só a primeira letra sobe. */
.agw-programacao time{font-size:.8125rem;font-weight:700;color:var(--mg-marinho,#0b3a25);display:inline-block}
.agw-programacao time::first-letter{text-transform:uppercase}
.agw-hora{font-size:.8125rem;color:var(--mg-texto-2,#5a6660)}
.agw-hora small{color:var(--mg-texto-2,#5a6660)}
.agw-atracao{font-size:.8125rem;color:var(--mg-azul,#0f5132);margin-left:auto}
/* A proporcao vem do core, que sabe se o embed e player 16:9 ou cartao em pe de rede social.
   Forcar 56.25% aqui deitava o post do Instagram e do TikTok. */
.agw-video__wrap{position:relative}
.agw-video__wrap iframe{border:0}

.agw-pontos__lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}
.agw-ponto{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;padding:.75rem;border:1px solid var(--mg-borda-campo,#e5e0d6);border-radius:.625rem;background:#fff}
.agw-ponto__info{display:flex;flex-direction:column;gap:.125rem;min-width:0}
.agw-ponto__end,.agw-ponto__escopo{font-size:.75rem;color:var(--mg-texto-2,#5a6660)}
.agw-ponto__acoes{display:flex;gap:.375rem;flex-wrap:wrap}
.agw-btn--whats{background:#13804f}
.agw-btn--whats:hover{background:#0f6b42}

.agw-contato__aviso{margin:0;font-size:.8125rem;color:#0a6b42}
.agw-contato__aviso--erro{color:var(--mg-erro,#b42318)}
.agw-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* Sem caixa dentro de caixa: o cartao branco da lateral ja e a moldura, e o h2 usa as classes
 do tema como o "Sobre o imovel" do single de imovel. */
.agw-fase-vigente{display:flex;align-items:baseline;gap:.375rem;margin:0 0 .625rem;padding:.375rem .625rem;border-radius:.5rem;background:var(--mg-suave,#f5f2ec);font-size:.8125rem;color:var(--mg-texto,#3d4a43)}
.agw-fase-vigente strong{color:#0b3f27}
.agw-gratis,.agw-preco-unico{margin:0;font-size:1.375rem;font-weight:800;color:var(--mg-marinho,#0b3a25)}
.agw-ingressos__rotulo{margin:0 0 .375rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mg-texto-2,#5a6660)}
.agw-grupo{margin-bottom:.75rem}
.agw-grupo__nome{margin:0 0 .25rem;font-size:.8125rem;font-weight:800;color:var(--mg-marinho,#0b3a25)}
.agw-ingressos__lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}
.agw-ingresso{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:.375rem 0;border-bottom:1px dashed var(--mg-borda-campo,#e5e0d6);font-size:.875rem}
.agw-ingresso:last-child{border-bottom:0}
.agw-ingresso__nome{color:var(--mg-texto,#3d4a43)}
.agw-ingresso__preco{font-weight:800;color:var(--mg-marinho,#0b3a25);white-space:nowrap}
.agw-campo--dia{margin-bottom:.625rem;background:#fff}
.agw-sem-ingresso{margin:0;font-size:.8125rem;color:var(--mg-texto-2,#5a6660)}
.agw-capacidade{margin:.625rem 0 0;font-size:.75rem;color:var(--mg-texto-2,#5a6660)}
.agw-btn--comprar{width:100%;justify-content:center;margin-top:.875rem}
.agw-ingressos__nota{margin:.625rem 0 0;font-size:.6875rem;line-height:1.4;color:var(--mg-texto-2,#5a6660)}

/* ---- Painel do organizador: etiqueta de status ---- */
.agw-status{display:inline-block;margin-top:.25rem;padding:.0625rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:700;border:1px solid transparent}
.agw-status--rascunho{background:#f1f5f9;color:#475569;border-color:#e2e8f0}
.agw-status--aguardando_pagamento{background:#fef3c7;color:#92400e;border-color:#fde68a}
.agw-status--publicado{background:#dcfce7;color:#166534;border-color:#bbf7d0}
.agw-status--encerrado{background:#e2e8f0;color:#475569;border-color:#cbd5e1}
.agw-status--expirado{background:#ffe4e6;color:#9f1239;border-color:#fecdd3}

/* "Adicionar à agenda" (0.2.0): dois botões logo abaixo do cabeçalho do evento. */
.agw-agenda{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.875rem 0 0}
.agw-agenda__rotulo{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:700;color:var(--mg-texto-2,#5a6660)}
.agw-agenda__rotulo .material-symbols-outlined{font-size:18px;color:var(--mg-separador,#a5aea8)}
.agw-agenda__btn{display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem .875rem;border-radius:var(--mg-raio-botao,10px);background:var(--mg-azul,#0f5132);color:#fff;font-size:.8125rem;font-weight:700;text-decoration:none;transition:background-color .2s}
.agw-agenda__btn:hover{background:var(--mg-azul-hover,#0b3f27)}
.agw-agenda__btn--sec{background:#fff;color:var(--mg-texto,#3d4a43);border:1px solid var(--mg-borda-campo,#e5e0d6)}
.agw-agenda__btn--sec:hover{background:var(--mg-suave,#f5f2ec)}
.agw-agenda__nota{flex:1 1 100%;font-size:.75rem;color:var(--mg-texto-2,#5a6660)}
/* 2026-09-08 - Valoar: no celular estreito o rótulo mais os dois botões não cabiam numa linha
   e o "Calendário" caía sozinho embaixo. Rótulo em linha própria, botões dividindo a linha
   seguinte em partes iguais: nunca sobra botão órfão. */
@media (max-width:520px){
	.agw-agenda__rotulo{flex:1 1 100%}
	.agw-agenda__btn{flex:1 1 0;justify-content:center;min-width:0}
}

/* Sugestoes de entrada solidaria (formulario, secao Entrada / Ingressos) */
.agw-entrada__sugestoes{display:flex;flex-wrap:wrap;gap:.375rem;margin:.375rem 0 .5rem}
.agw-entrada__chip{appearance:none;cursor:pointer;font-size:.75rem;font-weight:700;line-height:1;
  padding:.5rem .625rem;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#475569;
  transition:background-color .15s,border-color .15s,color .15s}
.agw-entrada__chip:hover{border-color:var(--gcep-color-primary,#0f5132);color:var(--gcep-color-primary,#0f5132)}
.agw-entrada__chip[aria-pressed="true"]{background:var(--gcep-color-primary,#0f5132);border-color:var(--gcep-color-primary,#0f5132);color:#fff}
.agw-entrada__chip:focus-visible{outline:2px solid var(--gcep-color-primary,#0f5132);outline-offset:2px}

/* 2026-09-08 - Valoar: a grade do evento.
   No celular a coluna lateral (ingresso, organizador, mapa) vinha depois de TUDO, inclusive
   dos comentários: a pessoa lia a programação e caía na caixa de comentário sem saber se
   pagava para entrar. Aqui ela entra entre a descrição e os comentários.
   Feito em CSS próprio de propósito: `order-*` e `lg:row-span-2` NÃO existem no Tailwind
   pré-compilado deste site, e classe que não existe não estiliza nada. */
.agw-grade{display:flex;flex-direction:column;gap:2rem}
.agw-grade__topo{order:1;min-width:0}
.agw-grade__lado{order:2;min-width:0}
.agw-grade__base{order:3;min-width:0}
@media (min-width:1024px){
	.agw-grade{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
	/* Posição explícita, não automática: no HTML a lateral vem DEPOIS do bloco de baixo (é o
	   que põe o ingresso antes dos comentários no celular), e o encaixe automático jogava ela
	   para a segunda linha. Aqui cada bloco tem linha e coluna próprias. */
	.agw-grade__topo{order:0;grid-column:1/3;grid-row:1}
	.agw-grade__base{order:0;grid-column:1/3;grid-row:2}
	.agw-grade__lado{order:0;grid-column:3/4;grid-row:1/3}
}
