/**
 * Multdivision Essentials: estrutura dos blocos de eventos, do aviso de encerrado e dos campos do
 * interessado. Só layout e estados; cores, fontes e raios vêm do tema (variáveis do theme.json).
 */

/* ---------- Próximos eventos ---------- */
.mdc-eventos {
	display: grid;
	gap: var(--wp--preset--spacing--30, 1rem);
}
.mdc-eventos__mes {
	display: grid;
	gap: var(--wp--preset--spacing--20, .75rem);
}
.mdc-eventos__mes + .mdc-eventos__mes {
	margin-top: var(--wp--preset--spacing--30, 1rem);
}
.mdc-eventos__mes-titulo {
	margin: 0;
	font-size: var(--wp--preset--font-size--small, .875rem);
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	opacity: .75;
}
.mdc-evento {
	position: relative;
	display: grid;
	grid-template-columns: 4.75rem 1fr auto;
	align-items: center;
	gap: var(--wp--preset--spacing--30, 1rem);
	padding: var(--wp--preset--spacing--30, 1rem);
	border: 1px solid var(--wp--preset--color--border, rgba(0, 0, 0, .12));
	border-radius: var(--wp--custom--radius--md, 12px);
	background: var(--wp--preset--color--base, #fff);
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.mdc-evento:hover,
.mdc-evento:focus-within {
	border-color: currentColor;
	box-shadow: 0 6px 24px rgba(0, 0, 0, .06);
}
.mdc-evento > * {
	margin: 0;
}
.mdc-evento__data {
	text-align: center;
	line-height: 1;
}
.mdc-evento__data time {
	display: grid;
	gap: .2rem;
}
.mdc-evento__dia {
	font-size: 2.25rem;
	font-weight: 700;
}
.mdc-evento__mes {
	font-size: .875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
}
.mdc-evento__semana {
	font-size: .75rem;
	text-transform: capitalize;
	opacity: .7;
}
.mdc-evento__corpo > * {
	margin: 0;
}
.mdc-evento__corpo > * + * {
	margin-top: .3rem;
}
.mdc-evento__titulo {
	font-size: var(--wp--preset--font-size--large, 1.25rem);
	line-height: 1.25;
}
.mdc-evento__link {
	color: inherit;
	text-decoration: none;
}
/* O cartão inteiro é clicável pelo link do título (um só link por evento para leitores de tela). */
.mdc-evento__link::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
}
.mdc-evento__link:focus-visible {
	outline: none;
}
.mdc-evento:has(.mdc-evento__link:focus-visible) {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}
.mdc-evento__resumo {
	font-size: var(--wp--preset--font-size--small, .9375rem);
	opacity: .85;
}
.mdc-evento__info {
	font-size: var(--wp--preset--font-size--small, .875rem);
	font-weight: 600;
}
.mdc-evento__vagas {
	display: inline-block;
	font-size: .8125rem;
	font-weight: 700;
}
.mdc-evento__botao {
	white-space: nowrap;
	pointer-events: none;
}
.mdc-evento.is-esgotado .mdc-evento__botao {
	opacity: .55;
}
.mdc-eventos__vazio {
	margin: 0;
}

@media (max-width: 600px) {
	.mdc-evento {
		grid-template-columns: 3.75rem 1fr;
		align-items: start;
	}
	.mdc-evento__dia {
		font-size: 1.875rem;
	}
	.mdc-evento__acao {
		grid-column: 1 / -1;
	}
	.mdc-evento__botao {
		display: block;
		text-align: center;
	}
}

/* Cartões lado a lado */
.mdc-eventos--cartoes {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
}
.mdc-eventos--cartoes .mdc-evento {
	grid-template-columns: 4rem 1fr;
	align-items: start;
	align-content: start;
	height: 100%;
}
.mdc-eventos--cartoes .mdc-evento__acao {
	grid-column: 1 / -1;
	align-self: end;
}
.mdc-eventos--cartoes .mdc-evento__botao {
	display: block;
	text-align: center;
}

/* ---------- Aviso do próximo evento (faixa superior) ---------- */
.mdc-aviso-evento {
	position: relative;
	display: grid;
	justify-items: center;
	min-width: 0;
}
.mdc-aviso-evento__item {
	grid-area: 1 / 1;
	display: block;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: inherit;
	text-decoration: none;
}
.mdc-aviso-evento__item:hover .mdc-aviso-evento__cta,
.mdc-aviso-evento__item:focus-visible .mdc-aviso-evento__cta {
	text-decoration: underline;
}
.mdc-aviso-evento__cta {
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: .2em;
}
.mdc-aviso-evento__data-curta {
	display: none;
}
@media (max-width: 600px) {
	/* No celular: nome e data curta (12/11); a chamada fica implícita no link. */
	.mdc-aviso-evento__data-curta + .mdc-aviso-evento__sep,
	.mdc-aviso-evento__cta {
		display: none;
	}
	/* A data por extenso continua para leitores de tela. */
	.mdc-aviso-evento__data {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}
	.mdc-aviso-evento__data-curta {
		display: inline;
	}
	.mdc-aviso-evento__nome {
		text-decoration: underline;
		text-underline-offset: .2em;
	}
}

/* Alternância discreta entre 2 ou 3 eventos: cada um fica 6 s; parar ao passar o mouse ou focar. */
.mdc-aviso-evento--2 .mdc-aviso-evento__item,
.mdc-aviso-evento--3 .mdc-aviso-evento__item {
	opacity: 0;
	visibility: hidden;
	animation-duration: 12s;
	animation-iteration-count: infinite;
	animation-name: mdc-aviso-2;
	animation-delay: calc(var(--mdc-i, 0) * 6s);
}
.mdc-aviso-evento--3 .mdc-aviso-evento__item {
	animation-duration: 18s;
	animation-name: mdc-aviso-3;
}
.mdc-aviso-evento:hover .mdc-aviso-evento__item,
.mdc-aviso-evento:focus-within .mdc-aviso-evento__item {
	animation-play-state: paused;
}
@keyframes mdc-aviso-2 {
	0% { opacity: 0; visibility: visible; transform: translateY(.35em); }
	4%, 46% { opacity: 1; visibility: visible; transform: none; }
	50%, 100% { opacity: 0; visibility: hidden; transform: translateY(-.35em); }
}
@keyframes mdc-aviso-3 {
	0% { opacity: 0; visibility: visible; transform: translateY(.35em); }
	3%, 30% { opacity: 1; visibility: visible; transform: none; }
	33.33%, 100% { opacity: 0; visibility: hidden; transform: translateY(-.35em); }
}
@media (prefers-reduced-motion: reduce) {
	.mdc-aviso-evento--2 .mdc-aviso-evento__item,
	.mdc-aviso-evento--3 .mdc-aviso-evento__item {
		animation: none;
	}
	.mdc-aviso-evento__item:first-child {
		opacity: 1;
		visibility: visible;
	}
}

/* ---------- Inscrições encerradas ---------- */
.mdc-evento-encerrado {
	padding: var(--wp--preset--spacing--40, 1.5rem);
	border: 1px solid var(--wp--preset--color--border, rgba(0, 0, 0, .12));
	border-radius: var(--wp--custom--radius--md, 12px);
	background: var(--wp--preset--color--surface, rgba(0, 0, 0, .03));
	text-align: center;
}
.mdc-evento-encerrado > * {
	margin: 0;
}
.mdc-evento-encerrado > * + * {
	margin-top: .6rem;
}
.mdc-evento-encerrado__titulo {
	font-size: var(--wp--preset--font-size--large, 1.25rem);
	font-weight: 700;
}

/* ---------- Dados do interessado (formulário de compra) ---------- */
.mdc-interessado {
	display: grid;
	gap: .75rem;
	width: 100%;
	margin: 0 0 1rem;
	padding: 0;
	border: 0;
	text-align: left;
}
.mdc-interessado__titulo {
	padding: 0;
	margin-bottom: .25rem;
	font-weight: 700;
}
.mdc-interessado p {
	margin: 0;
}
.mdc-interessado__campo {
	display: grid;
	gap: .3rem;
}
.mdc-interessado__campo label {
	font-size: .875rem;
	font-weight: 600;
}
.mdc-interessado__campo input {
	width: 100%;
	min-height: 48px;
	padding: .65rem .9rem;
	border: 1px solid var(--wp--preset--color--border, rgba(0, 0, 0, .2));
	border-radius: var(--wp--custom--field--radius, 10px);
	background: var(--wp--preset--color--base, #fff);
	color: inherit;
	font: inherit;
}
.mdc-interessado__campo input:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 1px;
}
.mdc-interessado__consentimento label {
	display: flex;
	gap: .5rem;
	align-items: flex-start;
	font-size: .875rem;
}
.mdc-interessado__consentimento input {
	margin-top: .2rem;
	flex: none;
}
.mdc-interessado__nota {
	font-size: .8125rem;
	opacity: .8;
}
.mdc-interessado__isca {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
@media (min-width: 640px) {
	.mdc-interessado {
		grid-template-columns: 1fr 1fr;
	}
	.mdc-interessado__campo:first-of-type,
	.mdc-interessado__consentimento,
	.mdc-interessado__nota {
		grid-column: 1 / -1;
	}
}

/* ---------- Formulário de inscrição da landing page ---------- */
.mdc-inscricao {
	display: grid;
	gap: 1rem;
	width: 100%;
	margin: 0;
	text-align: left;
	container-type: inline-size;
}
.mdc-inscricao > p,
.mdc-inscricao .mdc-interessado {
	margin: 0;
}
.mdc-inscricao .woocommerce-error,
.mdc-inscricao .woocommerce-message,
.mdc-inscricao .woocommerce-info,
.mdc-inscricao .wc-block-components-notice-banner {
	margin: 0;
}
.mdc-inscricao__vagas {
	justify-self: start;
	padding: .2rem .7rem;
	border-radius: 999px;
	background: var(--wp--preset--color--surface, rgba(0, 0, 0, .05));
	font-size: .8125rem;
	font-weight: 700;
}
.mdc-inscricao__vagas.is-ultimas {
	color: var(--wp--preset--color--accent, #9a4a52);
}
.mdc-inscricao__campo {
	display: grid;
	gap: .3rem;
}
.mdc-inscricao__campo label {
	font-size: .875rem;
	font-weight: 600;
}
.mdc-inscricao__campo select,
.mdc-inscricao__campo input {
	width: 100%;
	min-height: 48px;
	padding: .65rem .9rem;
	border: 1px solid var(--wp--preset--color--border, rgba(0, 0, 0, .2));
	border-radius: var(--wp--custom--field--radius, 10px);
	background: var(--wp--preset--color--base, #fff);
	color: inherit;
	font: inherit;
}
.mdc-inscricao__campo--qtd input {
	max-width: 8rem;
}
.mdc-inscricao__botao {
	width: 100%;
	min-height: 52px;
	font-family: inherit;
	cursor: pointer;
}
.mdc-inscricao__nota {
	font-size: .8125rem;
	opacity: .8;
}
.mdc-inscricao .mdc-interessado {
	grid-template-columns: 1fr;
}
@container (min-width: 30rem) {
	.mdc-inscricao .mdc-interessado {
		grid-template-columns: 1fr 1fr;
	}
	.mdc-inscricao .mdc-interessado__titulo,
	.mdc-inscricao .mdc-interessado__campo:first-of-type,
	.mdc-inscricao .mdc-interessado__consentimento {
		grid-column: 1 / -1;
	}
}

/* ---------- Foto em destaque, com a data por cima ---------- */
.mdc-evento.has-foto {
	grid-template-columns: minmax(10rem, 15rem) 1fr auto;
	padding: .75rem;
}
.mdc-evento__midia {
	position: relative;
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--md, 12px);
}
.mdc-evento__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform .4s ease;
}
.mdc-evento:hover .mdc-evento__img {
	transform: scale(1.03);
}
.mdc-evento.has-foto .mdc-evento__data {
	position: absolute;
	top: .6rem;
	left: .6rem;
	min-width: 3.6rem;
	padding: .5rem .35rem;
	border-radius: var(--wp--custom--radius--sm, 8px);
	background: var(--wp--preset--color--base, #fff);
	box-shadow: 0 4px 14px rgba(0, 0, 0, .12);
}
.mdc-evento.has-foto .mdc-evento__dia {
	font-size: 1.75rem;
}
@media (max-width: 600px) {
	.mdc-evento.has-foto {
		grid-template-columns: 1fr;
	}
}
.mdc-eventos--cartoes .mdc-evento.has-foto {
	grid-template-columns: 1fr;
}
.mdc-eventos--cartoes .mdc-evento.has-foto .mdc-evento__acao {
	grid-column: auto;
}
@media (prefers-reduced-motion: reduce) {
	.mdc-evento__img {
		transition: none;
	}
}
