/*
 * Madeirense Cursos
 * Usa as cores do tema BuddyBoss (variáveis --bb-*) quando existem, com alternativas próprias.
 * Responsivo por "container queries": adapta-se à largura do espaço onde está, não só do ecrã.
 */

.mcu,
.mcu-checkout {
	--mcu-cor: var(--bb-primary-color, #015c92);
	--mcu-cor-hover: var(--bb-primary-button-background-hover, #01466f);
	--mcu-texto: var(--bb-body-text-color, #2f3237);
	--mcu-titulos: var(--bb-headings-color, #15171f);
	--mcu-suave: var(--bb-alternate-text-color, #6b7280);
	--mcu-fundo: var(--bb-content-background-color, #fff);
	--mcu-fundo-alt: var(--bb-content-alternate-background-color, #f5f7f9);
	--mcu-borda: var(--bb-content-border-color, #e3e6ea);
	--mcu-raio: var(--bb-block-radius, 10px);
	--mcu-ok: #12805c;
	--mcu-erro: #b42318;
	--mcu-alerta: #b54708;
	--mcu-ouro: #f5a524;
}

.mcu {
	color: var(--mcu-texto);
	font-size: 15px;
	line-height: 1.55;
	container-type: inline-size;
	container-name: mcu;
}

.mcu *,
.mcu *::before,
.mcu *::after {
	box-sizing: border-box;
}

.mcu a {
	color: var(--mcu-cor);
}

.mcu [hidden] {
	display: none !important;
}

.mcu .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

.mcu-icone {
	flex: none;
	fill: currentColor;
	vertical-align: -3px;
}

.mcu-suave {
	color: var(--mcu-suave);
	font-size: .9em;
}

.mcu-centro {
	text-align: center;
}

.mcu-ajuda {
	display: block;
	margin: .3em 0 0;
	color: var(--mcu-suave);
	font-size: .84em;
	line-height: 1.45;
}

.mcu-avatar {
	flex: none;
	border-radius: 50%;
	vertical-align: middle;
}

/* ---------- Botões ---------- */

.mcu .mcu-btn,
.mcu-checkout .mcu-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .45em;
	min-height: 42px;
	margin: 0;
	padding: .55em 1.2em;
	border: 1px solid var(--mcu-cor);
	border-radius: 999px;
	background: var(--mcu-cor) !important;
	color: #fff !important;
	font: inherit;
	font-weight: 600;
	font-size: .94em;
	line-height: 1.2;
	text-decoration: none !important;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: none;
	transition: background .15s, border-color .15s, opacity .15s;
}

.mcu .mcu-btn:hover,
.mcu .mcu-btn:focus-visible,
.mcu-checkout .mcu-btn:hover {
	background: var(--mcu-cor-hover) !important;
	border-color: var(--mcu-cor-hover);
}

.mcu .mcu-btn--sec,
.mcu-checkout .mcu-btn--sec {
	border-color: var(--mcu-borda);
	background: var(--mcu-fundo) !important;
	color: var(--mcu-titulos) !important;
}

.mcu .mcu-btn--sec:hover,
.mcu .mcu-btn--sec:focus-visible,
.mcu-checkout .mcu-btn--sec:hover {
	border-color: var(--mcu-cor);
	background: var(--mcu-fundo) !important;
	color: var(--mcu-cor) !important;
}

.mcu .mcu-btn--peq {
	min-height: 32px;
	padding: .3em .85em;
	font-size: .82em;
}

.mcu .mcu-btn--largo,
.mcu-checkout .mcu-btn--largo {
	display: flex;
	width: 100%;
	min-height: 48px;
	font-size: 1em;
}

.mcu .mcu-btn:disabled,
.mcu-checkout .mcu-btn:disabled {
	opacity: .55;
	cursor: not-allowed;
}

.mcu .mcu-btn.is-a-carregar {
	cursor: wait;
}

.mcu-botoes {
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	margin: .8em 0;
}

.mcu-botoes--centro {
	justify-content: center;
}

.mcu .mcu-link-discreto,
.mcu-checkout .mcu-link-discreto {
	margin: 0;
	padding: .2em;
	border: 0 !important;
	background: none !important;
	color: var(--mcu-suave) !important;
	font: inherit;
	font-size: .84em;
	text-decoration: underline;
	cursor: pointer;
	box-shadow: none;
}

/* ---------- Avisos e etiquetas ---------- */

.mcu-aviso {
	margin: 0 0 1.2em;
	padding: .8em 1em;
	border: 1px solid var(--mcu-borda);
	border-left-width: 4px;
	border-radius: 8px;
	background: var(--mcu-fundo-alt);
	font-size: .95em;
}

.mcu-aviso--sucesso {
	border-left-color: var(--mcu-ok);
	background: #ecfdf3;
	color: #05603a;
}

.mcu-aviso--erro {
	border-left-color: var(--mcu-erro);
	background: #fef3f2;
	color: #912018;
}

.mcu-aviso--info {
	border-left-color: var(--mcu-cor);
}

.mcu-etiqueta {
	display: inline-flex;
	align-items: center;
	gap: .25em;
	padding: .1em .6em;
	border-radius: 999px;
	background: var(--mcu-fundo-alt);
	color: var(--mcu-suave) !important;
	font-size: .76em;
	font-weight: 600;
	line-height: 1.6;
	text-decoration: none !important;
	white-space: nowrap;
}

.mcu-etiqueta--ok {
	background: #ecfdf3;
	color: #05603a !important;
}

.mcu-etiqueta--erro {
	background: #fef3f2;
	color: #912018 !important;
}

.mcu-etiqueta--alerta {
	background: #fffaeb;
	color: #93370d !important;
}

.mcu-contador {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.5em;
	height: 1.5em;
	padding: 0 .4em;
	border-radius: 999px;
	background: var(--mcu-alerta);
	color: #fff;
	font-size: .75em;
}

.mcu-login {
	padding: 1.5em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
	text-align: center;
}

.mcu-login p {
	margin: 0;
}

.mcu-vazio {
	padding: 2em 1.5em;
	border: 1px dashed var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
	color: var(--mcu-suave);
	text-align: center;
}

.mcu-vazio .mcu-icone {
	color: var(--mcu-borda);
}

.mcu-vazio p {
	margin: .6em 0 0;
}

/* ---------- Barra de progresso e estrelas ---------- */

.mcu-barra {
	position: relative;
	height: 8px;
	overflow: hidden;
	border-radius: 999px;
	background: var(--mcu-fundo-alt);
	box-shadow: inset 0 0 0 1px var(--mcu-borda);
}

.mcu-barra span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--mcu-ok);
	transition: width .4s;
}

.mcu-barra--fina {
	height: 5px;
}

.mcu-barra--estrela span {
	background: var(--mcu-ouro);
}

.mcu-estrelas {
	position: relative;
	display: inline-block;
	color: var(--mcu-borda);
	font-size: 1em;
	letter-spacing: .05em;
	line-height: 1;
	vertical-align: -1px;
	white-space: nowrap;
}

.mcu-estrelas__cheias {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	color: var(--mcu-ouro);
}

/* ---------- Campos ---------- */

.mcu-campo {
	margin: 0 0 1em;
}

.mcu-campo > label {
	display: block;
	margin-bottom: .3em;
	color: var(--mcu-titulos);
	font-size: .88em;
	font-weight: 600;
}

.mcu .mcu-campo input:not([type="checkbox"]):not([type="radio"]),
.mcu .mcu-campo select,
.mcu .mcu-campo textarea,
.mcu .mcu-input,
.mcu .mcu-filtros input,
.mcu .mcu-filtros select,
.mcu-checkout .mcu-campo input,
.mcu-checkout .mcu-cupao input {
	display: block;
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: .5em .75em;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
	background: var(--mcu-fundo);
	color: var(--mcu-texto);
	font: inherit;
	font-size: .95em;
	box-shadow: none;
}

.mcu textarea {
	resize: vertical;
}

.mcu input:focus,
.mcu select:focus,
.mcu textarea:focus,
.mcu-checkout input:focus {
	border-color: var(--mcu-cor);
	outline: 2px solid color-mix(in srgb, var(--mcu-cor) 25%, transparent);
	outline-offset: 0;
}

.mcu-grelha-campos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 .8em;
}

.mcu-campo--total {
	grid-column: 1 / -1;
}

.mcu-check {
	display: flex;
	align-items: flex-start;
	gap: .5em;
	margin: .4em 0 1em;
	font-size: .9em;
	cursor: pointer;
}

.mcu-check input {
	margin-top: .25em;
}

.mcu-ficheiro {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: .5em;
	padding: .6em 1em;
	border: 1px dashed var(--mcu-cor);
	border-radius: 8px;
	color: var(--mcu-cor);
	font-weight: 600;
	cursor: pointer;
}

.mcu-ficheiro input[type="file"] {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.mcu-ficheiro.tem-ficheiro {
	border-style: solid;
	background: color-mix(in srgb, var(--mcu-cor) 6%, var(--mcu-fundo));
}

/* ---------- Tabelas ---------- */

.mcu-tabela-envolve {
	overflow-x: auto;
	margin: 0 0 1em;
}

.mcu .mcu-tabela {
	width: 100%;
	margin: 0;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	font-size: .9em;
}

.mcu .mcu-tabela th,
.mcu .mcu-tabela td {
	padding: .65em .8em;
	border: 0;
	border-bottom: 1px solid var(--mcu-borda);
	text-align: left;
	vertical-align: middle;
}

.mcu .mcu-tabela th {
	background: var(--mcu-fundo-alt);
	color: var(--mcu-suave);
	font-size: .82em;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .03em;
}

.mcu .mcu-tabela tr:last-child td {
	border-bottom: 0;
}

.mcu .mcu-tabela tr.is-inativo td {
	opacity: .55;
}

.mcu .mcu-tabela .mcu-barra {
	width: 120px;
	margin-bottom: .2em;
}

.mcu-tabela__acoes {
	text-align: right !important;
	white-space: nowrap;
}

.mcu-pessoa {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	color: var(--mcu-titulos) !important;
	font-weight: 600;
	text-decoration: none !important;
}

.mcu-menu-acoes {
	position: relative;
	display: inline-block;
}

.mcu-menu-acoes > summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	font-size: 1.2em;
	line-height: 1;
	list-style: none;
	cursor: pointer;
}

.mcu-menu-acoes > summary::-webkit-details-marker {
	display: none;
}

.mcu-menu-acoes > summary:hover {
	background: var(--mcu-fundo-alt);
}

.mcu-menu-acoes > div {
	position: absolute;
	right: 0;
	z-index: 20;
	min-width: 200px;
	padding: .3em;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
	background: var(--mcu-fundo);
	box-shadow: 0 10px 30px rgba(0, 0, 0, .12);
	text-align: left;
}

.mcu-menu-acoes form {
	margin: 0;
}

.mcu-menu-acoes a,
.mcu .mcu-menu-acoes button {
	display: block;
	width: 100%;
	margin: 0;
	padding: .5em .7em;
	border: 0;
	border-radius: 6px;
	background: none;
	color: var(--mcu-texto) !important;
	font: inherit;
	font-size: .92em;
	text-align: left;
	text-decoration: none !important;
	cursor: pointer;
	box-shadow: none;
}

.mcu-menu-acoes a:hover,
.mcu .mcu-menu-acoes button:hover {
	background: var(--mcu-fundo-alt);
}

/* ---------- Separadores e números ---------- */

.mcu-separadores {
	display: flex;
	gap: .2em;
	margin: 0 0 1.4em;
	border-bottom: 1px solid var(--mcu-borda);
	overflow-x: auto;
	scrollbar-width: none;
}

.mcu-separadores::-webkit-scrollbar {
	display: none;
}

.mcu-separadores a {
	display: inline-flex;
	align-items: center;
	gap: .35em;
	flex: none;
	padding: .75em .8em .65em;
	border-bottom: 3px solid transparent;
	color: var(--mcu-suave) !important;
	font-size: .92em;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
}

.mcu-separadores a:hover {
	color: var(--mcu-titulos) !important;
}

.mcu-separadores a.is-ativo {
	border-bottom-color: var(--mcu-cor);
	color: var(--mcu-cor) !important;
}

.mcu-numeros {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: .6em;
	margin: 0 0 1.2em;
}

.mcu-numeros > div {
	padding: .9em 1em;
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo-alt);
}

.mcu-numeros strong {
	display: block;
	color: var(--mcu-titulos);
	font-size: 1.5em;
	line-height: 1.2;
}

.mcu-numeros span {
	color: var(--mcu-suave);
	font-size: .85em;
}

.mcu-migalhas {
	margin: 0 0 .6em;
	color: var(--mcu-suave);
	font-size: .86em;
}

.mcu-migalhas a {
	color: var(--mcu-suave) !important;
	text-decoration: none !important;
}

.mcu-migalhas a:hover {
	color: var(--mcu-cor) !important;
}

/* =========================================================================
 * Página do curso
 * ====================================================================== */

.mcu-curso__topo {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	grid-template-areas: "intro compra";
	gap: 2em;
	align-items: start;
	margin: 0 0 2em;
	padding: 2em;
	border-radius: var(--mcu-raio);
	background: linear-gradient(135deg, color-mix(in srgb, var(--mcu-cor) 10%, var(--mcu-fundo)), var(--mcu-fundo-alt));
}

.mcu-curso__intro {
	grid-area: intro;
	min-width: 0;
}

.mcu .mcu-curso__titulo {
	margin: .1em 0 .3em;
	color: var(--mcu-titulos);
	font-size: 2.1em;
	line-height: 1.15;
}

.mcu-curso__resumo {
	margin: 0 0 1em;
	font-size: 1.08em;
}

.mcu-curso__factos {
	display: flex;
	flex-wrap: wrap;
	gap: .5em 1.2em;
	margin: 0 0 1em;
	padding: 0;
	list-style: none;
	font-size: .9em;
}

.mcu-curso__factos li {
	display: inline-flex;
	align-items: center;
	gap: .35em;
	margin: 0;
}

.mcu-curso__factos .mcu-icone {
	color: var(--mcu-suave);
}

.mcu-curso__nota strong {
	color: var(--mcu-alerta);
}

.mcu-curso__por {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em .8em;
	margin: 0;
	font-size: .92em;
}

.mcu-curso__por a {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	font-weight: 600;
	text-decoration: none;
}

.mcu-curso__gerir {
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
	margin: 1.2em 0 0;
}

/* Cartão de compra */
.mcu-cartao-compra {
	grid-area: compra;
	position: sticky;
	top: 90px;
	overflow: hidden;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
	box-shadow: 0 12px 34px rgba(16, 24, 40, .1);
}

.mcu-cartao-compra__img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	margin: 0;
	object-fit: cover;
}

.mcu-cartao-compra__corpo {
	padding: 1.2em 1.3em 1.3em;
}

.mcu-cartao-compra__corpo > form {
	margin: 0;
}

.mcu-preco {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .4em;
	margin: 0 0 .7em;
}

.mcu-preco strong {
	color: var(--mcu-titulos);
	font-size: 2em;
	line-height: 1;
}

.mcu-preco del {
	color: var(--mcu-suave);
}

.mcu-cta {
	display: flex;
	flex-direction: column;
	gap: .6em;
}

.mcu-cta p {
	margin: 0;
}

.mcu-cta__progresso {
	display: flex;
	flex-direction: column;
	gap: .3em;
	color: var(--mcu-suave);
	font-size: .85em;
}

.mcu-cta__nota {
	font-size: .8em !important;
}

.mcu-alerta-vagas {
	margin: .8em 0 0;
	color: var(--mcu-alerta);
	font-size: .88em;
	font-weight: 600;
	text-align: center;
}

.mcu .mcu-cartao-compra__sub {
	margin: 1.3em 0 .5em;
	color: var(--mcu-titulos);
	font-size: .95em;
}

.mcu-inclui {
	display: flex;
	flex-direction: column;
	gap: .4em;
	margin: 0 0 1em;
	padding: 0;
	list-style: none;
	font-size: .9em;
}

.mcu-inclui li {
	display: flex;
	align-items: center;
	gap: .55em;
	margin: 0;
}

.mcu-inclui .mcu-icone {
	color: var(--mcu-cor);
}

/* Corpo */
.mcu-curso__corpo {
	max-width: calc(100% - 360px - 2em);
}

.mcu-bloco {
	margin: 0 0 2.2em;
}

.mcu .mcu-bloco h2 {
	margin: 0 0 .8em;
	color: var(--mcu-titulos);
	font-size: 1.35em;
}

.mcu-bloco__topo {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: .3em 1em;
	margin-bottom: .8em;
}

.mcu .mcu-bloco__topo h2,
.mcu .mcu-bloco__topo h3 {
	margin: 0;
}

.mcu-aprender {
	padding: 1.3em 1.4em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
}

.mcu-aprender ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .6em 1.4em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcu-aprender li {
	display: flex;
	gap: .55em;
	margin: 0;
	font-size: .94em;
}

.mcu-aprender .mcu-icone {
	margin-top: .15em;
	color: var(--mcu-ok);
}

.mcu-lista {
	margin: 0;
	padding-left: 1.2em;
}

.mcu-lista li {
	margin: 0 0 .35em;
}

.mcu-duas {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 2em;
}

.mcu-texto {
	overflow-wrap: anywhere;
}

.mcu-texto img,
.mcu-texto iframe,
.mcu-texto video {
	max-width: 100%;
	height: auto;
}

/* Programa */
.mcu-programa {
	overflow: hidden;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
}

.mcu-secao + .mcu-secao {
	border-top: 1px solid var(--mcu-borda);
}

.mcu-secao__topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1em;
	padding: .85em 1.1em;
	background: var(--mcu-fundo-alt);
	list-style: none;
	cursor: pointer;
}

.mcu-secao__topo::-webkit-details-marker {
	display: none;
}

.mcu-secao__topo::before {
	content: "";
	flex: none;
	width: .5em;
	height: .5em;
	border-right: 2px solid var(--mcu-suave);
	border-bottom: 2px solid var(--mcu-suave);
	transform: rotate(-45deg);
	transition: transform .15s;
}

.mcu-secao[open] > .mcu-secao__topo::before {
	transform: rotate(45deg);
}

.mcu-secao__titulo {
	flex: 1;
	color: var(--mcu-titulos);
	font-weight: 700;
}

.mcu-secao__info {
	flex: none;
	color: var(--mcu-suave);
	font-size: .84em;
}

.mcu-itens {
	margin: 0;
	padding: .3em 0;
	list-style: none;
}

.mcu-item {
	display: flex;
	align-items: center;
	gap: .7em;
	margin: 0;
	padding: .55em 1.1em;
	font-size: .94em;
}

.mcu-item__estado {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--mcu-fundo-alt);
	color: var(--mcu-suave);
}

.mcu-item.is-feito .mcu-item__estado {
	background: var(--mcu-ok);
	color: #fff;
}

.mcu-item__titulo {
	flex: 1;
	min-width: 0;
	color: var(--mcu-texto) !important;
	text-decoration: none !important;
}

a.mcu-item__titulo:hover {
	color: var(--mcu-cor) !important;
}

.mcu-item.is-bloqueado .mcu-item__titulo {
	color: var(--mcu-suave) !important;
}

.mcu-item.is-atual {
	background: color-mix(in srgb, var(--mcu-cor) 8%, var(--mcu-fundo));
	box-shadow: inset 3px 0 0 var(--mcu-cor);
}

.mcu-item.is-atual .mcu-item__titulo {
	color: var(--mcu-cor) !important;
	font-weight: 600;
}

.mcu-item__meta {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: .4em;
}

/* Formador, FAQ */
.mcu-formador {
	display: flex;
	gap: 1em;
	align-items: flex-start;
	margin: 0 0 1em;
}

.mcu .mcu-formador h3 {
	margin: 0;
	font-size: 1.05em;
}

.mcu-formador h3 a {
	color: var(--mcu-titulos) !important;
	text-decoration: none !important;
}

.mcu-formador p {
	margin: .2em 0 0;
}

.mcu-faq details {
	border-bottom: 1px solid var(--mcu-borda);
}

.mcu-faq summary {
	padding: .85em 0;
	color: var(--mcu-titulos);
	font-weight: 600;
	cursor: pointer;
}

.mcu-faq details > div {
	padding: 0 0 .8em;
}

/* Sessões ao vivo */
.mcu-sessoes {
	display: flex;
	flex-direction: column;
	gap: .6em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcu-sessao {
	display: flex;
	align-items: center;
	gap: 1em;
	margin: 0;
	padding: .8em 1em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
}

.mcu-sessao.is-agora {
	border-color: var(--mcu-erro);
	box-shadow: 0 0 0 3px #fef3f2;
}

.mcu-sessao__data {
	display: flex;
	flex: none;
	flex-direction: column;
	align-items: center;
	width: 52px;
	padding: .3em 0;
	border-radius: 8px;
	background: var(--mcu-fundo-alt);
	line-height: 1.1;
}

.mcu-sessao__data strong {
	color: var(--mcu-titulos);
	font-size: 1.3em;
}

.mcu-sessao__data span {
	color: var(--mcu-suave);
	font-size: .75em;
	text-transform: uppercase;
}

.mcu-sessao__info {
	flex: 1;
	min-width: 0;
}

.mcu .mcu-sessao__info h3 {
	margin: 0;
	font-size: 1em;
}

.mcu-sessao__info p {
	margin: 0;
}

/* Avaliações */
.mcu-aval-resumo {
	display: flex;
	flex-wrap: wrap;
	gap: 1.4em 2.4em;
	align-items: center;
	margin: 0 0 1.4em;
}

.mcu-aval-resumo__media {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .2em;
}

.mcu-aval-resumo__media strong {
	color: var(--mcu-titulos);
	font-size: 2.6em;
	line-height: 1;
}

.mcu-aval-resumo__barras {
	flex: 1;
	min-width: 220px;
	max-width: 420px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcu-aval-resumo__barras li {
	display: grid;
	grid-template-columns: 2.4em 1fr 2em;
	gap: .6em;
	align-items: center;
	margin: 0 0 .25em;
	font-size: .85em;
}

.mcu-aval-form {
	margin: 0 0 1.4em;
	padding: 1em 1.2em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
}

.mcu-aval-form summary {
	color: var(--mcu-cor);
	font-weight: 600;
	cursor: pointer;
}

.mcu-aval-form form {
	display: flex;
	flex-direction: column;
	gap: .7em;
	margin-top: .8em;
}

.mcu-aval-form form .mcu-btn {
	align-self: flex-start;
}

.mcu-estrelas-input {
	display: inline-flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	gap: .1em;
	margin: 0;
	padding: 0;
	border: 0;
}

.mcu-estrelas-input legend {
	width: 100%;
	margin: 0 0 .2em;
	font-size: .88em;
	font-weight: 600;
}

.mcu-estrelas-input input {
	position: absolute;
	opacity: 0;
}

.mcu-estrelas-input label {
	color: var(--mcu-borda);
	font-size: 2em;
	line-height: 1;
	cursor: pointer;
	transition: color .1s;
}

.mcu-estrelas-input input:checked ~ label,
.mcu-estrelas-input label:hover,
.mcu-estrelas-input label:hover ~ label {
	color: var(--mcu-ouro);
}

.mcu-estrelas-input input:focus-visible + label {
	outline: 2px solid var(--mcu-cor);
	outline-offset: 2px;
}

.mcu-avaliacoes {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcu-avaliacao {
	display: flex;
	gap: .8em;
	margin: 0;
	padding: 1em 0;
	border-top: 1px solid var(--mcu-borda);
}

.mcu-avaliacao > div {
	flex: 1;
	min-width: 0;
}

.mcu-avaliacao__topo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .2em .6em;
	margin: 0 0 .3em;
}

.mcu-avaliacao__texto p {
	margin: 0 0 .5em;
}

.mcu-avaliacao__resposta {
	margin: .5em 0 0;
	padding: .7em .9em;
	border-left: 3px solid var(--mcu-cor);
	border-radius: 0 8px 8px 0;
	background: var(--mcu-fundo-alt);
	font-size: .92em;
}

.mcu-avaliacao__resposta p {
	margin: .2em 0 0;
}

.mcu-avaliacao__responder summary {
	color: var(--mcu-cor);
	font-size: .86em;
	font-weight: 600;
	cursor: pointer;
}

.mcu-avaliacao__responder form {
	display: flex;
	flex-direction: column;
	gap: .5em;
	margin-top: .5em;
}

.mcu-avaliacao__responder .mcu-btn {
	align-self: flex-start;
}

/* Vídeo */
.mcu-video {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	border-radius: var(--mcu-raio);
	background: #000;
}

.mcu-cartao-compra .mcu-video {
	border-radius: 0;
}

.mcu-video iframe,
.mcu-video video,
.mcu-video object,
.mcu-video embed {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

/* =========================================================================
 * Catálogo e cartões
 * ====================================================================== */

.mcu-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	align-items: center;
	margin: 0 0 1.2em;
	padding: .8em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
}

.mcu-filtros__procura {
	flex: 1 1 260px;
}

.mcu .mcu-filtros select {
	width: auto;
	flex: 0 1 auto;
}

.mcu-catalogo__total {
	margin: 0 0 .6em;
}

.mcu-grelha {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1.1em;
}

.mcu-grelha--3 {
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.mcu-cartao {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
	transition: box-shadow .15s, transform .15s;
}

.mcu-cartao:hover {
	box-shadow: 0 10px 28px rgba(16, 24, 40, .1);
	transform: translateY(-2px);
}

.mcu-cartao__img {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: linear-gradient(135deg, color-mix(in srgb, var(--mcu-cor) 25%, var(--mcu-fundo)), var(--mcu-fundo-alt));
}

.mcu-cartao__img img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.mcu-cartao__sem-img {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: #fff;
	opacity: .8;
}

.mcu-cartao__promo {
	position: absolute;
	top: .6em;
	left: .6em;
	padding: .15em .6em;
	border-radius: 999px;
	background: var(--mcu-erro);
	color: #fff;
	font-size: .78em;
	font-weight: 700;
}

.mcu-cartao__corpo {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: .35em;
	padding: .9em 1em 1em;
}

.mcu-cartao__area {
	color: var(--mcu-cor);
	font-size: .74em;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.mcu .mcu-cartao__titulo {
	margin: 0;
	font-size: 1.05em;
	line-height: 1.3;
}

.mcu-cartao__titulo a {
	color: var(--mcu-titulos) !important;
	text-decoration: none !important;
}

.mcu-cartao__titulo a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.mcu-cartao__por,
.mcu-cartao__nota,
.mcu-cartao__meta {
	display: flex;
	align-items: center;
	gap: .35em;
	margin: 0;
	color: var(--mcu-suave);
	font-size: .84em;
}

.mcu-cartao__nota strong {
	color: var(--mcu-alerta);
}

.mcu-cartao__rodape {
	display: flex;
	flex-direction: column;
	gap: .4em;
	margin-top: auto;
	padding-top: .5em;
}

.mcu-cartao__preco strong {
	color: var(--mcu-titulos);
	font-size: 1.15em;
}

.mcu-cartao__preco del {
	color: var(--mcu-suave);
	font-size: .88em;
}

.mcu-gratis {
	color: var(--mcu-ok) !important;
}

.mcu-cartao__acao {
	position: relative;
	z-index: 1;
	font-size: .86em;
	font-weight: 600;
	text-decoration: none !important;
}

.mcu-paginas {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .3em;
	margin: 1.6em 0 .4em;
}

.mcu-paginas a,
.mcu-paginas span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 .6em;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
	text-decoration: none !important;
}

.mcu-paginas span {
	border-color: var(--mcu-cor);
	background: var(--mcu-cor);
	color: #fff;
}

/* Modelo próprio (temas clássicos): margens laterais */
.mcu-pagina > .site-main {
	box-sizing: border-box;
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: 1.5em 20px 3em;
}

/* =========================================================================
 * Aula e teste (modo foco)
 * ====================================================================== */

.mcu-pagina .entry-header,
.mcu-modo-foco .bb-grid > .widget-area {
	display: none;
}

.mcu-foco {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 1.6em;
	align-items: start;
}

.mcu-foco.is-lateral-fechada {
	grid-template-columns: minmax(0, 1fr);
}

.mcu-foco.is-lateral-fechada .mcu-foco__lateral {
	display: none;
}

.mcu-foco__lateral {
	position: sticky;
	top: 90px;
	max-height: calc(100vh - 110px);
	overflow-y: auto;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
	scrollbar-width: thin;
}

.mcu-foco__curso {
	display: flex;
	flex-direction: column;
	gap: .4em;
	padding: 1em;
	border-bottom: 1px solid var(--mcu-borda);
}

.mcu-foco__voltar {
	display: flex;
	align-items: flex-start;
	gap: .3em;
	color: var(--mcu-titulos) !important;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none !important;
}

.mcu-programa--compacto {
	border: 0;
	border-radius: 0;
}

.mcu-programa--compacto .mcu-secao__topo {
	padding: .7em 1em;
	font-size: .9em;
}

.mcu-programa--compacto .mcu-item {
	padding: .45em 1em;
	font-size: .88em;
}

.mcu-programa--compacto .mcu-item__estado {
	width: 22px;
	height: 22px;
}

.mcu-foco__principal {
	min-width: 0;
}

.mcu-foco__barra {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .5em;
	margin: 0 0 1em;
}

.mcu-foco__nav {
	display: flex;
	gap: .4em;
}

.mcu-foco__artigo {
	max-width: 860px;
}

.mcu-foco__tipo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em;
	margin: 0;
	color: var(--mcu-suave);
	font-size: .85em;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .03em;
}

.mcu .mcu-foco__titulo {
	margin: .2em 0 .8em;
	color: var(--mcu-titulos);
	font-size: 1.9em;
	line-height: 1.2;
}

.mcu-foco__gerir {
	margin: -.4em 0 1em;
	font-size: .85em;
}

.mcu-foco__artigo > .mcu-video {
	margin: 0 0 1.4em;
}

.mcu-foco__artigo .mcu-texto {
	font-size: 1.05em;
	line-height: 1.7;
}

.mcu-materiais,
.mcu-trabalho {
	margin: 1.8em 0 0;
	padding: 1.2em 1.3em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
}

.mcu .mcu-materiais h2,
.mcu .mcu-trabalho h2 {
	display: flex;
	align-items: center;
	gap: .4em;
	margin: 0 0 .7em;
	font-size: 1.1em;
}

.mcu-materiais ul {
	display: flex;
	flex-direction: column;
	gap: .4em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcu-materiais a {
	display: flex;
	align-items: center;
	gap: .6em;
	padding: .55em .7em;
	border-radius: 8px;
	background: var(--mcu-fundo-alt);
	text-decoration: none !important;
}

.mcu-materiais a span {
	flex: 1;
	font-weight: 600;
}

.mcu-materiais small {
	color: var(--mcu-suave);
}

.mcu-trabalhos {
	margin: 0 0 1em;
	padding: 0;
	list-style: none;
}

.mcu-trabalhos li {
	margin: 0 0 .5em;
	padding: .6em .8em;
	border-radius: 8px;
	background: var(--mcu-fundo-alt);
}

.mcu-trabalhos__linha {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em .8em;
}

.mcu-trabalhos__comentario {
	margin-top: .4em;
	font-size: .92em;
}

.mcu-trabalho__form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .6em 1em;
}

.mcu-trabalho__form .mcu-ajuda {
	flex-basis: 100%;
	order: 3;
}

.mcu-notas {
	margin: 1.8em 0 0;
	padding: .9em 1.1em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: #fffdf5;
}

.mcu-notas summary {
	display: flex;
	align-items: center;
	gap: .4em;
	color: var(--mcu-titulos);
	font-weight: 600;
	cursor: pointer;
}

.mcu-notas form {
	margin: .7em 0 0;
}

.mcu-notas textarea {
	background: #fff !important;
}

.mcu-notas__barra {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: .8em;
	margin-top: .5em;
}

.mcu-concluir {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .8em;
	margin: 2em 0 0;
	padding: 1.2em 0 0;
	border-top: 1px solid var(--mcu-borda);
}

.mcu-concluir form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8em;
	margin: 0;
}

.mcu-concluir p {
	margin: 0;
}

.mcu-concluir__feito {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	color: var(--mcu-ok);
	font-weight: 700;
}

.mcu-amostra-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .8em;
	width: 100%;
	padding: 1em 1.2em;
	border-radius: var(--mcu-raio);
	background: color-mix(in srgb, var(--mcu-cor) 8%, var(--mcu-fundo));
}

.mcu-amostra-cta p {
	margin: 0;
}

.mcu-bloqueado {
	padding: 2.4em 1.5em;
	border: 1px dashed var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo-alt);
	text-align: center;
}

.mcu-bloqueado > .mcu-icone {
	color: var(--mcu-suave);
}

.mcu .mcu-bloqueado h2 {
	margin: .4em 0 .3em;
	font-size: 1.3em;
}

.mcu-bloqueado .mcu-login {
	border: 0;
	background: none;
}

.mcu-foco__comentarios {
	max-width: 860px;
	margin: 2.4em 0 0;
	padding-top: 1.4em;
	border-top: 1px solid var(--mcu-borda);
}

.mcu .mcu-foco__comentarios > h2 {
	font-size: 1.25em;
}

/* Testes */
.mcu-teste-info {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: .6em;
	margin: 1.2em 0;
	padding: 0;
	list-style: none;
}

.mcu-teste-info li {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: .8em;
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo-alt);
	text-align: center;
}

.mcu-teste-info strong {
	color: var(--mcu-titulos);
	font-size: 1.4em;
}

.mcu-teste-info span {
	color: var(--mcu-suave);
	font-size: .82em;
}

.mcu-tentativas {
	margin-bottom: 1.2em !important;
}

.mcu-teste-comecar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8em;
}

.mcu-teste {
	position: relative;
}

.mcu-cronometro {
	position: sticky;
	top: 80px;
	z-index: 5;
	display: flex;
	align-items: center;
	gap: .4em;
	width: max-content;
	margin: 0 0 1em auto;
	padding: .4em .9em;
	border: 1px solid var(--mcu-borda);
	border-radius: 999px;
	background: var(--mcu-fundo);
	box-shadow: 0 4px 14px rgba(0, 0, 0, .08);
	font-variant-numeric: tabular-nums;
	font-weight: 700;
}

.mcu-cronometro.is-pouco {
	border-color: var(--mcu-erro);
	color: var(--mcu-erro);
}

.mcu .mcu-pergunta {
	margin: 0 0 1.2em;
	padding: 1.1em 1.2em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
}

.mcu .mcu-pergunta > legend {
	display: flex;
	float: left;
	width: 100%;
	gap: .6em;
	margin: 0 0 .9em;
	padding: 0;
	color: var(--mcu-titulos);
	font-weight: 600;
}

.mcu .mcu-pergunta > legend + * {
	clear: both;
}

.mcu-pergunta__n {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 1.8em;
	height: 1.8em;
	border-radius: 50%;
	background: var(--mcu-cor);
	color: #fff;
	font-size: .85em;
}

.mcu-pergunta__texto {
	flex: 1;
}

.mcu-pergunta__pts {
	flex: none;
	color: var(--mcu-suave);
	font-size: .8em;
	font-weight: 500;
}

.mcu-opcoes {
	display: flex;
	flex-direction: column;
	gap: .45em;
}

.mcu-opcoes--linha {
	flex-direction: row;
	flex-wrap: wrap;
}

.mcu-opcoes p {
	margin: 0;
}

.mcu-opcao {
	display: flex;
	align-items: flex-start;
	gap: .6em;
	padding: .6em .8em;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
	cursor: pointer;
	transition: border-color .12s, background .12s;
}

.mcu-opcao:hover {
	border-color: var(--mcu-cor);
}

.mcu-opcao input {
	margin-top: .25em;
}

.mcu-opcao:has(input:checked) {
	border-color: var(--mcu-cor);
	background: color-mix(in srgb, var(--mcu-cor) 7%, var(--mcu-fundo));
}

.mcu-ordenar {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: mcu-ord;
}

.mcu-ordenar li {
	display: flex;
	align-items: center;
	gap: .6em;
	margin: 0 0 .4em;
	padding: .5em .5em .5em .8em;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
	background: var(--mcu-fundo);
	counter-increment: mcu-ord;
	transition: transform .12s;
}

.mcu-ordenar li::before {
	content: counter(mcu-ord) ".";
	color: var(--mcu-suave);
	font-weight: 700;
}

.mcu-ordenar li > span:first-of-type {
	flex: 1;
}

.mcu-ordenar__botoes {
	display: flex;
	gap: .2em;
}

.mcu .mcu-ordenar__botoes button {
	width: 32px;
	height: 32px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--mcu-borda);
	border-radius: 6px;
	background: var(--mcu-fundo-alt);
	color: var(--mcu-texto);
	font-size: .75em;
	cursor: pointer;
	box-shadow: none;
}

.mcu-ordenar__botoes button:hover {
	border-color: var(--mcu-cor);
	color: var(--mcu-cor);
}

.mcu-teste__fim {
	display: flex;
	justify-content: flex-end;
}

.mcu-resultado {
	margin: 0 0 1.6em;
	padding: 1.8em 1.4em;
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo-alt);
	text-align: center;
}

.mcu-resultado.is-ok {
	background: #ecfdf3;
}

.mcu-resultado.is-falhou {
	background: #fef3f2;
}

.mcu-resultado__nota {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 96px;
	border: 6px solid currentColor;
	border-radius: 50%;
	background: var(--mcu-fundo);
	color: var(--mcu-suave);
}

.mcu-resultado.is-ok .mcu-resultado__nota {
	color: var(--mcu-ok);
}

.mcu-resultado.is-falhou .mcu-resultado__nota {
	color: var(--mcu-erro);
}

.mcu-resultado__nota strong {
	color: var(--mcu-titulos);
	font-size: 1.6em;
}

.mcu .mcu-resultado h2 {
	margin: .5em 0 .2em;
	font-size: 1.4em;
}

.mcu-resultado p {
	margin: 0;
}

.mcu-revisao {
	display: flex;
	flex-direction: column;
	gap: .8em;
}

.mcu-rev {
	padding: .9em 1.1em;
	border: 1px solid var(--mcu-borda);
	border-left-width: 4px;
	border-radius: 8px;
}

.mcu-rev.is-certa {
	border-left-color: var(--mcu-ok);
}

.mcu-rev.is-errada {
	border-left-color: var(--mcu-erro);
}

.mcu-rev.is-parcial,
.mcu-rev.is-pendente {
	border-left-color: var(--mcu-alerta);
}

.mcu-rev p {
	margin: 0 0 .3em;
}

.mcu-rev__q {
	display: flex;
	gap: .6em;
	color: var(--mcu-titulos);
	font-weight: 600;
}

.mcu-rev__exp {
	margin-top: .5em;
	padding: .6em .8em;
	border-radius: 6px;
	background: var(--mcu-fundo-alt);
	font-size: .92em;
}

.mcu-rev__exp p:last-child {
	margin: 0;
}

/* =========================================================================
 * Checkout (MB WAY)
 * ====================================================================== */

dialog.mcu-checkout {
	width: min(480px, calc(100vw - 24px));
	max-height: calc(100vh - 24px);
	margin: auto;
	padding: 0;
	overflow: auto;
	border: 0;
	border-radius: 16px;
	background: var(--mcu-fundo);
	color: var(--mcu-texto);
	box-shadow: 0 24px 60px rgba(16, 24, 40, .3);
	font-size: 15px;
	line-height: 1.5;
}

dialog.mcu-checkout::backdrop {
	background: rgba(16, 24, 40, .55);
}

.mcu-checkout__caixa {
	position: relative;
	padding: 1.5em 1.5em 1.3em;
}

.mcu-checkout h2 {
	margin: 0 0 .9em;
	color: var(--mcu-titulos);
	font-size: 1.3em;
}

.mcu-checkout .mcu-checkout__fechar {
	position: absolute;
	top: .8em;
	right: .8em;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--mcu-fundo-alt);
	color: var(--mcu-texto);
	cursor: pointer;
}

.mcu-checkout__resumo {
	display: flex;
	align-items: center;
	gap: .8em;
	margin: 0 0 1.1em;
	padding: .8em;
	border-radius: 10px;
	background: var(--mcu-fundo-alt);
}

.mcu-checkout__resumo img {
	width: 56px;
	height: 56px;
	margin: 0;
	border-radius: 8px;
	object-fit: cover;
}

.mcu-checkout__resumo > div {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	line-height: 1.3;
}

.mcu-checkout__total {
	margin: 0;
	text-align: right;
}

.mcu-checkout__total strong {
	color: var(--mcu-titulos);
	font-size: 1.3em;
}

.mcu-checkout__total del {
	display: block;
	color: var(--mcu-suave);
	font-size: .85em;
}

.mcu-checkout .mcu-campo > label {
	display: block;
	margin-bottom: .3em;
	color: var(--mcu-titulos);
	font-size: .88em;
	font-weight: 600;
}

.mcu-tel {
	display: flex;
	overflow: hidden;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
}

.mcu-tel span {
	display: flex;
	align-items: center;
	padding: 0 .7em;
	background: var(--mcu-fundo-alt);
	color: var(--mcu-suave);
	font-weight: 600;
}

.mcu-checkout .mcu-tel input {
	border: 0 !important;
	border-radius: 0 !important;
	font-size: 1.1em !important;
	letter-spacing: .04em;
}

.mcu-checkout details {
	margin: 0 0 .8em;
}

.mcu-checkout summary {
	color: var(--mcu-cor);
	font-size: .9em;
	font-weight: 600;
	cursor: pointer;
}

.mcu-checkout details[open] summary {
	margin-bottom: .6em;
}

.mcu-checkout .mcu-grelha-campos {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 .6em;
}

.mcu-checkout .mcu-campo--total {
	grid-column: 1 / -1;
}

.mcu-cupao {
	display: flex;
	gap: .5em;
}

.mcu-cupao input {
	text-transform: uppercase;
}

.mcu-checkout .mcu-ajuda.is-ok {
	color: var(--mcu-ok);
}

.mcu-checkout .mcu-ajuda.is-erro,
.mcu-checkout__erro {
	color: var(--mcu-erro);
}

.mcu-checkout__erro {
	margin: 0 0 .8em;
	padding: .6em .8em;
	border-radius: 8px;
	background: #fef3f2;
	font-size: .9em;
}

.mcu-checkout .is-invalido input,
.mcu-checkout input.is-invalido {
	border-color: var(--mcu-erro) !important;
}

.mcu-checkout__espera,
.mcu-checkout__ok {
	padding: 1em 0 .4em;
	text-align: center;
}

.mcu-telefone-anim {
	display: inline-flex;
	color: var(--mcu-cor);
	animation: mcu-vibrar 1.6s ease-in-out infinite;
}

@keyframes mcu-vibrar {
	0%, 60%, 100% { transform: rotate(0); }
	65% { transform: rotate(-8deg); }
	70% { transform: rotate(8deg); }
	75% { transform: rotate(-6deg); }
	80% { transform: rotate(6deg); }
}

@media (prefers-reduced-motion: reduce) {
	.mcu-telefone-anim {
		animation: none;
	}
}

.mcu-contagem {
	margin: .4em 0;
	color: var(--mcu-titulos);
	font-size: 2em;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.mcu-checkout__ok .mcu-icone {
	padding: .2em;
	border-radius: 50%;
	background: #ecfdf3;
	color: var(--mcu-ok);
}

/* =========================================================================
 * Área do aluno
 * ====================================================================== */

.mcu-aluno__topo,
.mcu-painel__topo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .8em;
	margin: 0 0 1em;
}

.mcu .mcu-painel__topo h2 {
	margin: 0;
	color: var(--mcu-titulos);
}

.mcu-aluno__quem {
	display: flex;
	align-items: center;
	gap: .8em;
}

.mcu-aluno__quem > div {
	display: flex;
	flex-direction: column;
}

.mcu-aluno__quem strong {
	color: var(--mcu-titulos);
	font-size: 1.15em;
}

.mcu-lista-cursos {
	display: flex;
	flex-direction: column;
	gap: .8em;
}

.mcu-linha-curso {
	display: grid;
	grid-template-columns: 160px minmax(0, 1fr) auto;
	gap: 1em;
	align-items: center;
	padding: .8em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
}

.mcu-linha-curso.is-expirado {
	opacity: .75;
}

.mcu-linha-curso__img {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 8px;
	background: linear-gradient(135deg, color-mix(in srgb, var(--mcu-cor) 25%, var(--mcu-fundo)), var(--mcu-fundo-alt));
	color: #fff;
}

.mcu-linha-curso__img img {
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.mcu .mcu-linha-curso__info h3 {
	margin: 0 0 .5em;
	font-size: 1.05em;
}

.mcu-linha-curso__info h3 a {
	color: var(--mcu-titulos) !important;
	text-decoration: none !important;
}

.mcu-linha-curso__info p {
	margin: .4em 0 0;
}

.mcu-linha-curso__acoes {
	display: flex;
	flex-direction: column;
	gap: .4em;
}

.mcu-grelha--certs {
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

.mcu-cert-cartao {
	padding: 1.2em;
	border: 1px solid var(--mcu-borda);
	border-top: 4px solid var(--mcu-ouro);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
}

.mcu-cert-cartao > .mcu-icone {
	color: var(--mcu-ouro);
}

.mcu .mcu-cert-cartao h3 {
	margin: .4em 0 .2em;
	font-size: 1.05em;
}

.mcu-cert-cartao p {
	margin: 0;
}

.mcu-notas-lista__curso {
	margin: 1.2em 0 .6em !important;
	font-size: 1.1em;
}

.mcu-nota {
	margin: 0 0 .7em;
	padding: .8em 1em;
	border: 1px solid var(--mcu-borda);
	border-radius: 8px;
	background: #fffdf5;
}

.mcu .mcu-nota h4 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: .5em;
	margin: 0 0 .4em;
	font-size: .98em;
}

.mcu-nota p:last-child {
	margin-bottom: 0;
}

.mcu-conquistas {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: .8em;
}

.mcu-conquista {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .2em;
	padding: 1.2em .8em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
	text-align: center;
	filter: grayscale(1);
	opacity: .55;
}

.mcu-conquista.is-ganha {
	filter: none;
	opacity: 1;
	border-color: color-mix(in srgb, var(--mcu-ouro) 60%, var(--mcu-borda));
}

.mcu-conquista__emoji {
	font-size: 2.2em;
	line-height: 1.1;
}

.mcu-conquista strong {
	color: var(--mcu-titulos);
}

.mcu-conquista small {
	color: var(--mcu-suave);
	font-size: .78em;
}

.mcu-bp__sub {
	margin: 1.8em 0 .8em !important;
}

/* =========================================================================
 * Painel do formador
 * ====================================================================== */

.mcu-avaliar {
	margin: 0 0 1em;
	padding: 1em 1.2em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo);
}

.mcu-avaliar header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em .8em;
	margin: 0 0 .6em;
}

.mcu-avaliar__form {
	margin: .4em 0 0;
}

.mcu-avaliar__q {
	margin: 0 0 1em;
	padding: .8em 0 0;
	border-top: 1px solid var(--mcu-borda);
}

.mcu-avaliar__q blockquote {
	margin: .4em 0 .8em;
	padding: .6em .9em;
	border-left: 3px solid var(--mcu-cor);
	background: var(--mcu-fundo-alt);
	font-size: 1em;
	font-style: normal;
	font-weight: 400;
}

.mcu-avaliar__q blockquote::before {
	display: none;
}

.mcu-avaliar__q blockquote p {
	margin: 0;
	font-size: 1em;
	font-weight: 400;
}

.mcu-form-simples {
	max-width: 520px;
}

.mcu-grupo-curso {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em;
	margin: 0 0 1em;
	padding: .6em .9em;
	border-radius: 8px;
	background: color-mix(in srgb, var(--mcu-cor) 8%, #fff);
	font-size: .92em;
}

.mcu-grupo-curso span {
	display: inline-flex;
	align-items: center;
	gap: .3em;
	color: var(--mcu-suave);
}

.mcu-grupo-curso a {
	font-weight: 700;
}

/* =========================================================================
 * Responsivo
 * ====================================================================== */

@container mcu (max-width: 980px) {
	.mcu-curso__topo {
		grid-template-columns: minmax(0, 1fr) 320px;
		padding: 1.5em;
		gap: 1.4em;
	}

	.mcu-curso__corpo {
		max-width: calc(100% - 320px - 1.4em);
	}

	.mcu-foco {
		grid-template-columns: 260px minmax(0, 1fr);
		gap: 1.2em;
	}
}

@container mcu (max-width: 780px) {
	.mcu-curso__topo {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"intro"
			"compra";
		padding: 1.2em;
	}

	.mcu-cartao-compra {
		position: static;
	}

	.mcu-curso__corpo {
		max-width: none;
	}

	.mcu .mcu-curso__titulo {
		font-size: 1.6em;
	}

	.mcu-aprender ul,
	.mcu-duas {
		grid-template-columns: minmax(0, 1fr);
	}

	.mcu-foco {
		grid-template-columns: minmax(0, 1fr);
	}

	.mcu-foco__lateral {
		position: static;
		max-height: 60vh;
		order: 2;
	}

	.mcu-foco:not(.is-lateral-aberta) .mcu-foco__lateral {
		display: none;
	}

	.mcu-foco.is-lateral-aberta .mcu-foco__lateral {
		display: block;
		order: 0;
	}

	.mcu .mcu-foco__titulo {
		font-size: 1.5em;
	}

	.mcu-teste-info {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mcu-linha-curso {
		grid-template-columns: 110px minmax(0, 1fr);
	}

	.mcu-linha-curso__acoes {
		grid-column: 1 / -1;
		flex-direction: row;
		flex-wrap: wrap;
	}

	.mcu .mcu-filtros select {
		flex: 1 1 140px;
	}
}

@container mcu (max-width: 560px) {
	.mcu-grelha-campos {
		grid-template-columns: minmax(0, 1fr);
	}

	.mcu-foco__barra .mcu-btn span {
		display: none;
	}

	.mcu-item__meta .mcu-suave {
		display: none;
	}

	.mcu-linha-curso {
		grid-template-columns: minmax(0, 1fr);
	}

	.mcu-linha-curso__img {
		display: none;
	}

	.mcu-sessao {
		flex-wrap: wrap;
	}

	/* Tabelas em cartões */
	.mcu .mcu-tabela thead {
		display: none;
	}

	.mcu .mcu-tabela,
	.mcu .mcu-tabela tbody,
	.mcu .mcu-tabela tr,
	.mcu .mcu-tabela td {
		display: block;
		width: 100%;
	}

	.mcu .mcu-tabela tr {
		padding: .5em 0;
		border-bottom: 1px solid var(--mcu-borda);
	}

	.mcu .mcu-tabela td {
		padding: .25em .8em;
		border: 0;
	}

	.mcu .mcu-tabela td[data-label]::before {
		content: attr(data-label);
		display: block;
		color: var(--mcu-suave);
		font-size: .75em;
		font-weight: 600;
		text-transform: uppercase;
	}

	.mcu-tabela__acoes {
		text-align: left !important;
	}
}

@media (max-width: 480px) {
	.mcu-checkout__caixa {
		padding: 1.2em 1em 1em;
	}

	.mcu-checkout .mcu-grelha-campos {
		grid-template-columns: 1fr;
	}
}

/* =========================================================================
 * Versão 1.1 — catálogo por áreas, competências, perguntas, blocos das aulas
 * ====================================================================== */

/* As tabelas deixam os menus de ações abrir por cima. */
.mcu .mcu-tabela-envolve {
	overflow: visible;
}

.mcu .mcu-tabela {
	overflow: visible;
}

.mcu-curso-linha {
	display: flex;
	align-items: center;
	gap: .7em;
}

.mcu-curso-linha img,
.mcu-curso-linha__sem {
	flex: none;
	width: 48px;
	height: 48px;
	margin: 0;
	border-radius: 8px;
	object-fit: cover;
}

.mcu-curso-linha__sem {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--mcu-fundo-alt);
	color: var(--mcu-suave);
}

.mcu .mcu-perigo,
.mcu .mcu-menu-acoes button.mcu-perigo {
	color: var(--mcu-erro) !important;
}

/* Áreas no catálogo */
.mcu-areas {
	display: flex;
	gap: .4em;
	margin: 0 0 1.4em;
	padding-bottom: .2em;
	overflow-x: auto;
	scrollbar-width: thin;
}

.mcu-areas a {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: .4em;
	padding: .4em .9em;
	border: 1px solid var(--mcu-borda);
	border-radius: 999px;
	background: var(--mcu-fundo);
	color: var(--mcu-texto) !important;
	font-size: .88em;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
}

.mcu-areas a span {
	color: var(--mcu-suave);
	font-weight: 500;
}

.mcu-areas a:hover {
	border-color: var(--mcu-cor);
}

.mcu-areas a.is-ativo {
	border-color: var(--mcu-cor);
	background: var(--mcu-cor);
	color: #fff !important;
}

.mcu-areas a.is-ativo span {
	color: rgba(255, 255, 255, .8);
}

.mcu-area {
	margin: 0 0 2.4em;
}

.mcu-area__topo {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: .4em 1em;
	margin: 0 0 .9em;
}

.mcu .mcu-area__topo h2 {
	margin: 0;
	color: var(--mcu-titulos);
	font-size: 1.35em;
}

.mcu-area__topo p {
	margin: .2em 0 0;
}

.mcu-area__todos {
	display: inline-flex;
	align-items: center;
	gap: .2em;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
}

/* Botões nos cartões (por cima do link do cartão) */
.mcu-cartao__preco {
	margin: 0;
}

.mcu-cartao__botoes {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
}

.mcu-cartao__botoes form {
	margin: 0;
}

.mcu-cartao__botoes .mcu-btn {
	flex: 1;
}

.mcu-cartao__botoes form {
	display: flex;
	flex: 1;
}

.mcu-cartao__botoes form .mcu-btn {
	width: 100%;
}

/* Competências e mercado de trabalho */
.mcu-chips {
	display: flex;
	flex-wrap: wrap;
	gap: .45em;
	margin: 0 0 1.2em;
	padding: 0;
	list-style: none;
}

.mcu-chips li {
	margin: 0;
	padding: .35em .85em;
	border-radius: 999px;
	background: color-mix(in srgb, var(--mcu-cor) 10%, var(--mcu-fundo));
	color: var(--mcu-cor);
	font-size: .88em;
	font-weight: 600;
}

.mcu-mercado {
	display: flex;
	gap: .9em;
	padding: 1.1em 1.2em;
	border: 1px solid var(--mcu-borda);
	border-radius: var(--mcu-raio);
	background: var(--mcu-fundo-alt);
}

.mcu-mercado > .mcu-icone {
	flex: none;
	margin-top: .15em;
	color: var(--mcu-cor);
}

.mcu .mcu-mercado h3 {
	margin: 0 0 .3em;
	font-size: 1.05em;
}

.mcu-mercado p:last-child {
	margin-bottom: 0;
}

.mcu-cartao-compra__duvidas {
	margin: .9em 0 0;
	font-size: .88em;
}

/* Perguntas sobre o curso */
.mcu-qa-form {
	display: flex;
	flex-direction: column;
	gap: .5em;
	margin: 0 0 1.2em;
}

.mcu-qa-form .mcu-btn {
	align-self: flex-start;
}

.mcu-qa {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mcu-qa__item {
	margin: 0;
	padding: 1em 0;
	border-top: 1px solid var(--mcu-borda);
}

.mcu-qa__pergunta,
.mcu-qa__resposta {
	display: flex;
	gap: .7em;
}

.mcu-qa__pergunta > div,
.mcu-qa__resposta > div {
	flex: 1;
	min-width: 0;
}

.mcu-qa__pergunta p,
.mcu-qa__resposta p {
	margin: 0 0 .4em;
}

.mcu-qa__quem {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .2em .5em;
}

.mcu-qa__resposta {
	margin: .6em 0 0 2.8em;
	padding: .7em .9em;
	border-radius: 10px;
	background: var(--mcu-fundo-alt);
	font-size: .95em;
}

.mcu-qa__resposta.is-formador {
	background: color-mix(in srgb, var(--mcu-cor) 7%, var(--mcu-fundo));
}

.mcu-qa__responder {
	margin: .5em 0 0 2.8em;
}

.mcu-qa__responder summary {
	color: var(--mcu-cor);
	font-size: .86em;
	font-weight: 600;
	cursor: pointer;
}

.mcu-qa__responder form {
	display: flex;
	flex-direction: column;
	gap: .5em;
	margin-top: .5em;
}

.mcu-qa__responder .mcu-btn {
	align-self: flex-start;
}

/* Conteúdo das aulas feito no editor de blocos */
.mcu-texto .mcu-figura {
	margin: 1.4em 0;
}

.mcu-texto .mcu-figura img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	border-radius: 8px;
}

.mcu-texto figcaption {
	margin-top: .4em;
	color: var(--mcu-suave);
	font-size: .88em;
	text-align: center;
}

.mcu-texto .mcu-citacao {
	margin: 1.4em 0;
	padding: .4em 0 .4em 1.2em;
	border-left: 4px solid var(--mcu-cor);
	font-size: 1.1em;
	font-style: italic;
}

.mcu-texto .mcu-citacao cite {
	display: block;
	margin-top: .4em;
	color: var(--mcu-suave);
	font-size: .85em;
	font-style: normal;
}

.mcu-texto .mcu-codigo {
	overflow-x: auto;
	margin: 1.2em 0;
	padding: 1em;
	border-radius: 8px;
	background: #1d2433;
	color: #e6edf3;
	font-size: .88em;
	line-height: 1.5;
}

.mcu-texto .mcu-separador {
	width: 30%;
	margin: 2em auto;
	border: 0;
	border-top: 2px solid var(--mcu-borda);
}

.mcu-texto .mcu-video-incorporado,
.mcu-texto .mcu-video-ficheiro {
	margin: 1.4em 0;
}

.mcu-texto .mcu-video-incorporado iframe {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 8px;
}

.mcu-texto .mcu-video-ficheiro video {
	display: block;
	width: 100%;
	border-radius: 8px;
	background: #000;
}

.mcu-video__link {
	display: inline-flex;
	padding: .6em 1em;
	border-radius: 999px;
	background: var(--mcu-fundo-alt);
	font-weight: 600;
	text-decoration: none !important;
}

.mcu-destaque {
	margin: 1.2em 0;
	padding: .9em 1.1em;
	border-left: 4px solid var(--mcu-cor);
	border-radius: 0 10px 10px 0;
	background: color-mix(in srgb, var(--mcu-cor) 7%, var(--mcu-fundo));
}

.mcu-destaque p {
	margin: 0;
}

.mcu-destaque strong:first-child {
	display: block;
	margin-bottom: .2em;
	color: var(--mcu-cor);
	font-size: .82em;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.mcu-destaque--importante {
	border-left-color: var(--mcu-erro);
	background: #fef3f2;
}

.mcu-destaque--importante strong:first-child {
	color: var(--mcu-erro);
}

.mcu-destaque--exemplo {
	border-left-color: var(--mcu-ok);
	background: #ecfdf3;
}

.mcu-destaque--exemplo strong:first-child {
	color: var(--mcu-ok);
}

.mcu .mcu-ordenar__botoes button,
.mcu .mcu-menu-acoes button,
.mcu-checkout .mcu-checkout__fechar {
	background: var(--mcu-fundo-alt) !important;
	color: var(--mcu-texto) !important;
	box-shadow: none !important;
}

.mcu .mcu-menu-acoes button {
	background: transparent !important;
}

.mcu .mcu-menu-acoes button:hover {
	background: var(--mcu-fundo-alt) !important;
}

/* Páginas do plugin (catálogo, área do aluno, painel) usam a largura larga do tema. */
.entry-content > .mcu,
.wp-block-post-content > .mcu {
	max-width: min(1200px, calc(100vw - 40px)) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}
