/*
 * Madeirense Diretório
 * Usa as cores do tema BuddyBoss (variáveis --bb-*) quando existem, com alternativas próprias.
 */

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

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

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

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

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

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

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

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

.mdi-sep {
	margin: 0 .35em;
	color: var(--mdi-borda);
}

.mdi-link-forte {
	font-weight: 700;
	text-decoration: none;
}

.mdi-link-perigo,
.mdi .mdi-link-perigo {
	color: var(--mdi-erro);
	font-size: .88em;
}

.mdi-link-discreto,
.mdi .mdi-link-discreto {
	color: var(--mdi-suave);
	font-size: .82em;
}

.mdi-links-topo {
	margin: 0 0 1em;
	font-size: .88em;
}

.mdi-links-topo a {
	text-decoration: none;
}

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

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

.mdi .mdi-btn:hover,
.mdi .mdi-btn:focus-visible {
	background: var(--mdi-cor-hover);
	border-color: var(--mdi-cor-hover);
}

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

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

.mdi .mdi-btn--perigo {
	border-color: var(--mdi-borda);
	background: transparent;
	color: var(--mdi-erro) !important;
}

.mdi .mdi-btn--perigo:hover {
	border-color: var(--mdi-erro);
	background: #fef3f2;
}

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

.mdi .mdi-btn--grande {
	min-height: 48px;
	padding: .7em 1.6em;
	font-size: 1em;
}

.mdi .mdi-btn--whatsapp .mdi-icone {
	color: #25d366;
}

.mdi .mdi-btn:disabled {
	opacity: .6;
	cursor: wait;
}

.mdi .mdi-btn.is-ativo {
	border-color: var(--mdi-cor);
	background: var(--mdi-cor);
	color: #fff !important;
}

.mdi .mdi-btn--seguir.is-ativo .mdi-icone {
	color: #ff6b81;
}

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

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

.mdi .mdi-link-btn {
	display: inline-flex;
	align-items: center;
	gap: .3em;
	min-height: 0;
	margin: 0;
	padding: .2em 0;
	border: 0;
	background: none;
	color: var(--mdi-cor);
	font: inherit;
	font-size: .88em;
	font-weight: 600;
	cursor: pointer;
	box-shadow: none;
}

.mdi .mdi-link-btn--perigo {
	color: var(--mdi-erro);
	font-size: 1.3em;
	line-height: 1;
}

.mdi-ficheiro {
	position: relative;
	overflow: hidden;
}

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

/* ---------- Avisos ---------- */

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

.mdi-aviso ul {
	margin: .4em 0 0 1.2em;
	padding: 0;
}

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

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

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

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

.mdi-login p {
	margin: 0;
}

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

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

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

.mdi-obrig {
	color: var(--mdi-erro);
}

.mdi .mdi-campo input[type="text"],
.mdi .mdi-campo input[type="email"],
.mdi .mdi-campo input[type="url"],
.mdi .mdi-campo input[type="tel"],
.mdi .mdi-campo input[type="number"],
.mdi .mdi-campo input[type="date"],
.mdi .mdi-campo input[type="time"],
.mdi .mdi-campo input[type="search"],
.mdi .mdi-campo select,
.mdi .mdi-campo textarea,
.mdi textarea,
.mdi-form-linha input[type="text"] {
	display: block;
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: .5em .75em;
	border: 1px solid var(--mdi-borda);
	border-radius: 8px;
	background: var(--mdi-fundo);
	color: var(--mdi-texto);
	font: inherit;
	font-size: .95em;
	box-shadow: none;
}

.mdi textarea {
	resize: vertical;
}

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

.mdi-check,
.mdi-radio {
	display: flex;
	align-items: flex-start;
	gap: .5em;
	margin: .4em 0;
	font-size: .93em;
	cursor: pointer;
}

.mdi-check input,
.mdi-radio input {
	flex: none;
	margin: .25em 0 0;
}

.mdi fieldset {
	min-width: 0;
	margin: 0 0 1em;
	padding: 0;
	border: 0;
}

.mdi-checks__grelha {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 0 1em;
}

.mdi-grelha-2,
.mdi-grelha-3,
.mdi-grelha-4 {
	display: grid;
	gap: 0 1em;
}

.mdi-grelha-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mdi-grelha-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mdi-grelha-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.mdi-form-linha {
	display: flex;
	gap: .5em;
	margin-top: .8em;
}

.mdi-form-linha input {
	flex: 1;
}

/* ---------- Logótipos, selos, estrelas, estado ---------- */

.mdi-logo {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: var(--mdi-logo, 64px);
	height: var(--mdi-logo, 64px);
	overflow: hidden;
	border-radius: 22%;
	background: var(--mdi-fundo);
	box-shadow: 0 0 0 1px var(--mdi-borda);
}

.mdi-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mdi-logo--iniciais {
	color: #fff;
	font-size: calc(var(--mdi-logo, 64px) * .38);
	font-weight: 700;
	letter-spacing: .02em;
	box-shadow: none;
}

.mdi-selo {
	display: inline-flex;
	margin-left: .25em;
	color: var(--mdi-azul);
	vertical-align: middle;
}

.mdi-selo .mdi-icone {
	width: 1.05em;
	height: 1.05em;
	vertical-align: 0;
}

.mdi-estrelas {
	display: inline-flex;
	align-items: center;
	gap: .25em;
	white-space: nowrap;
}

.mdi-estrelas__fundo {
	position: relative;
	display: inline-block;
	color: #d6d9de;
	font-size: 1.05em;
	letter-spacing: .05em;
	line-height: 1;
}

.mdi-estrelas__cheio {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	color: #f5a623;
	white-space: nowrap;
}

.mdi-estrelas__num {
	color: var(--mdi-titulos);
	font-weight: 700;
}

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

.mdi-estrelas--peq .mdi-estrelas__fundo {
	font-size: .9em;
}

.mdi-estado {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	font-size: .9em;
	font-weight: 600;
	white-space: nowrap;
}

.mdi-estado__ponto {
	width: .55em;
	height: .55em;
	border-radius: 50%;
	background: currentColor;
}

.mdi-estado--aberto { color: var(--mdi-ok); }
.mdi-estado--breve { color: var(--mdi-alerta); }
.mdi-estado--fechado { color: var(--mdi-erro); }
.mdi-estado--marcacao { color: var(--mdi-suave); }

.mdi-contagem {
	display: inline-block;
	min-width: 1.5em;
	margin-left: .2em;
	padding: 0 .4em;
	border-radius: 999px;
	background: var(--mdi-fundo-alt);
	color: var(--mdi-suave);
	font-size: .8em;
	text-align: center;
}

.mdi-pilulas {
	display: flex;
	flex-wrap: wrap;
	gap: .35em;
	margin: 0 0 .6em;
}

.mdi-pilula {
	display: inline-block;
	padding: .2em .7em;
	border-radius: 999px;
	background: var(--mdi-fundo-alt);
	color: var(--mdi-texto);
	font-size: .82em;
}

.mdi-pilula--tipo {
	background: color-mix(in srgb, var(--mdi-cor) 12%, transparent);
	color: var(--mdi-cor);
	font-weight: 700;
	font-size: .72em;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.mdi-barra {
	display: block;
	flex: 1;
	height: 8px;
	overflow: hidden;
	border-radius: 999px;
	background: var(--mdi-fundo-alt);
}

.mdi-barra span {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: #f5a623;
}

/* ---------- Cabeçalho do perfil ---------- */

.mdi-cab {
	margin-bottom: 0;
	overflow: hidden;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio) var(--mdi-raio) 0 0;
	background: var(--mdi-fundo);
}

.mdi-cab__capa {
	position: relative;
	z-index: 0;
	height: 260px;
	background-color: var(--mdi-fundo-alt);
	background-position: center;
	background-size: cover;
}

.mdi-cab__capa-padrao {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 20% 30%, color-mix(in srgb, var(--mdi-cor) 35%, transparent), transparent 55%),
		radial-gradient(circle at 80% 70%, color-mix(in srgb, #12805c 30%, transparent), transparent 55%),
		linear-gradient(135deg, color-mix(in srgb, var(--mdi-cor) 18%, var(--mdi-fundo)), var(--mdi-fundo-alt));
}

.mdi-cab__corpo {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	grid-template-areas:
		"logo info"
		"acoes acoes";
	gap: 0 1.2em;
	padding: 0 1.4em 1.2em;
}

.mdi-cab__logo {
	position: relative; /* Por cima da capa (que tem position: relative). */
	z-index: 2;
	grid-area: logo;
	align-self: start;
	width: max-content;
	margin-top: -52px;
}

.mdi-cab__logo .mdi-logo {
	border: 4px solid var(--mdi-fundo);
	box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
}

.mdi-cab__info {
	grid-area: info;
	min-width: 0;
	padding-top: .8em;
}

.mdi .mdi-cab__nome {
	margin: 0 0 .2em;
	color: var(--mdi-titulos);
	font-size: 1.75em;
	line-height: 1.15;
}

.mdi-cab__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 0 .4em;
	color: var(--mdi-suave);
	font-size: .9em;
}

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

.mdi-cab__meta a:hover {
	color: var(--mdi-cor) !important;
}

.mdi-cab__curta {
	margin: 0 0 .5em;
	color: var(--mdi-texto);
	font-size: 1.02em;
}

.mdi-cab__estado {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em 1.1em;
	margin: 0;
	font-size: .92em;
}

.mdi-cab__nota {
	text-decoration: none;
}

.mdi-cab__seguidores {
	color: var(--mdi-suave);
}

.mdi-cab__acoes {
	grid-area: acoes;
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	margin-top: 1.1em;
}

.mdi-cab__reivindicar {
	margin: 0;
	padding: .7em 1.4em;
	border-top: 1px solid var(--mdi-borda);
	background: var(--mdi-fundo-alt);
	font-size: .9em;
}

/* Separadores */
.mdi-separadores {
	margin-bottom: 1.5em;
	border: 1px solid var(--mdi-borda);
	border-top: 0;
	border-radius: 0 0 var(--mdi-raio) var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-separadores ul {
	display: flex;
	gap: .2em;
	margin: 0;
	padding: 0 .8em;
	overflow-x: auto;
	list-style: none;
	scrollbar-width: none;
}

.mdi-separadores ul::-webkit-scrollbar {
	display: none;
}

.mdi-separadores li {
	flex: none;
	margin: 0;
}

.mdi-separadores a {
	display: block;
	padding: .85em .8em .75em;
	border-bottom: 3px solid transparent;
	color: var(--mdi-suave) !important;
	font-size: .92em;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
}

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

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

/* Grelha do perfil */
.mdi-perfil__grelha {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 1.5em;
	align-items: start;
}

.mdi-perfil__principal,
.mdi-perfil__lateral {
	display: flex;
	flex-direction: column;
	gap: 1.2em;
	min-width: 0;
}

.mdi-bloco,
.mdi-caixa {
	padding: 1.2em 1.3em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-bloco--destaque {
	border-color: color-mix(in srgb, var(--mdi-cor) 40%, var(--mdi-borda));
	background: color-mix(in srgb, var(--mdi-cor) 6%, var(--mdi-fundo));
}

.mdi-bloco--destaque p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em;
	margin: 0;
}

.mdi-bloco__cab {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5em;
	margin-bottom: .8em;
}

.mdi-bloco__cab .mdi-bloco__titulo {
	margin: 0;
}

.mdi .mdi-bloco__titulo,
.mdi .mdi-caixa__titulo {
	display: flex;
	align-items: center;
	gap: .4em;
	margin: 0 0 .8em;
	color: var(--mdi-titulos);
	font-size: 1.1em;
	line-height: 1.3;
}

.mdi .mdi-caixa__titulo {
	font-size: .95em;
}

.mdi .mdi-caixa__sub {
	margin: 1em 0 .4em;
	color: var(--mdi-suave);
	font-size: .78em;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.mdi .mdi-caixa__sub:first-child {
	margin-top: 0;
}

.mdi-texto p {
	margin: 0 0 .9em;
}

.mdi-texto p:last-child {
	margin-bottom: 0;
}

/* Lateral */
.mdi-horario {
	width: 100%;
	margin: .7em 0 0;
	border-collapse: collapse;
	font-size: .9em;
}

.mdi-horario th,
.mdi-horario td {
	padding: .3em 0;
	border: 0;
	text-align: left;
	vertical-align: top;
}

.mdi-horario th {
	width: 6.5em;
	color: var(--mdi-suave);
	font-weight: 500;
}

.mdi-horario tr.is-hoje th,
.mdi-horario tr.is-hoje td {
	color: var(--mdi-titulos);
	font-weight: 700;
}

.mdi-horario__notas {
	margin: .7em 0 0;
	padding: 0;
	color: var(--mdi-suave);
	font-size: .84em;
	list-style: none;
}

.mdi-horario__notas li {
	margin: .2em 0;
}

.mdi-horario__tua-hora {
	margin: .5em 0 0;
	color: var(--mdi-suave);
	font-size: .82em;
}

.mdi-contactos {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-contactos li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em;
	margin: 0 0 .55em;
	overflow-wrap: anywhere;
}

.mdi-contactos .mdi-icone {
	color: var(--mdi-suave);
}

.mdi-contactos small {
	color: var(--mdi-suave);
}

.mdi-redes-links {
	display: flex;
	flex-wrap: wrap;
	gap: .35em;
	margin: .7em 0 0;
}

.mdi-rede {
	padding: .25em .7em;
	border: 1px solid var(--mdi-borda);
	border-radius: 999px;
	color: var(--mdi-texto) !important;
	font-size: .82em;
	text-decoration: none !important;
}

.mdi-rede:hover {
	border-color: var(--mdi-cor);
	color: var(--mdi-cor) !important;
}

.mdi-morada {
	margin: .6em 0 .3em;
}

.mdi-extra {
	margin: .9em 0 0;
	padding: 0;
	color: var(--mdi-suave);
	font-size: .85em;
	list-style: none;
}

.mdi-denunciar {
	margin: 0;
	color: var(--mdi-suave);
	font-size: .8em;
	text-align: center;
}

.mdi-denunciar a {
	color: var(--mdi-suave) !important;
}

/* Mapas */
.mdi-mapa {
	position: relative;
	z-index: 0;
	width: 100%;
	overflow: hidden;
	border-radius: 8px;
	background: var(--mdi-fundo-alt);
}

.mdi-mapa--perfil {
	height: 200px;
}

.mdi-mapa--diretorio {
	height: min(70vh, 620px);
	border: 1px solid var(--mdi-borda);
}

.mdi-mapa--erro {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: auto !important;
	min-height: 80px;
	padding: 1em;
	color: var(--mdi-suave);
	font-size: .9em;
}

.mdi-mapa--erro ul {
	margin: .5em 0 0 1.2em;
}

.mdi-pino span {
	display: block;
	width: 26px;
	height: 26px;
	border: 3px solid #fff;
	border-radius: 50% 50% 50% 0;
	background: var(--mdi-cor, #015c92);
	box-shadow: 0 2px 6px rgba(0, 0, 0, .35);
	transform: rotate(-45deg);
}

.mdi-pino--aberto span {
	background: #12805c;
}

.mdi-popup {
	display: flex;
	gap: .6em;
	min-width: 180px;
	font: 13px/1.4 system-ui, sans-serif;
}

.mdi-popup img {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	object-fit: cover;
}

.mdi-popup__aberto { color: #12805c; }
.mdi-popup__fechado { color: #b42318; }

/* Serviços */
.mdi .mdi-servicos__grupo {
	margin: 1.2em 0 .4em;
	color: var(--mdi-suave);
	font-size: .8em;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.mdi .mdi-servicos__grupo:first-child {
	margin-top: 0;
}

.mdi-servicos {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-servico {
	display: flex;
	align-items: baseline;
	gap: .6em;
	padding: .55em 0;
	border-bottom: 1px solid var(--mdi-borda);
}

.mdi-servico:last-child {
	border-bottom: 0;
}

.mdi-servico__texto {
	flex: 1;
	min-width: 0;
}

.mdi-servico__nome {
	color: var(--mdi-titulos);
	font-weight: 600;
}

.mdi-servico__duracao {
	color: var(--mdi-suave);
}

.mdi-servico__desc {
	margin: .15em 0 0;
	color: var(--mdi-suave);
	font-size: .88em;
}

.mdi-servico__linha {
	display: none;
}

.mdi-servico__preco {
	flex: none;
	color: var(--mdi-titulos);
	font-weight: 700;
	white-space: nowrap;
}

/* Produtos */
.mdi-produtos {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 1em;
}

.mdi-produto {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-produto__img {
	aspect-ratio: 1;
	overflow: hidden;
	background: var(--mdi-fundo-alt);
}

.mdi-produto__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mdi-produto__sem {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: var(--mdi-borda);
	font-size: 3em;
	font-weight: 700;
}

.mdi-produto__texto {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: .7em .8em .8em;
}

.mdi .mdi-produto__nome {
	margin: 0 0 .2em;
	color: var(--mdi-titulos);
	font-size: .95em;
	line-height: 1.3;
}

.mdi-produto__preco {
	margin: 0 0 .3em;
	color: var(--mdi-cor);
	font-weight: 700;
}

.mdi-produto__desc {
	margin: 0 0 .4em;
	color: var(--mdi-suave);
	font-size: .84em;
}

.mdi-produto .mdi-botoes {
	margin: auto 0 0;
	padding-top: .3em;
}

/* Galeria */
.mdi-galeria {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: .5em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-galeria a {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 8px;
}

.mdi-galeria img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s;
}

.mdi-galeria a:hover img {
	transform: scale(1.04);
}

.mdi-lightbox {
	position: fixed;
	inset: 0;
	z-index: 100002;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(10, 12, 18, .92);
}

.mdi-lightbox img {
	max-width: 92vw;
	max-height: 86vh;
	border-radius: 6px;
}

.mdi-lightbox button {
	position: absolute;
	width: 48px;
	height: 48px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .12);
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.mdi-lightbox__fechar { top: 16px; right: 16px; }
.mdi-lightbox__ant { left: 16px; top: 50%; transform: translateY(-50%); }
.mdi-lightbox__seg { right: 16px; top: 50%; transform: translateY(-50%); }

html.mdi-sem-scroll {
	overflow: hidden;
}

/* Publicações */
.mdi-publicacoes {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-publicacao {
	padding: 1em 0;
	border-bottom: 1px solid var(--mdi-borda);
}

.mdi-publicacao:last-child {
	border-bottom: 0;
}

.mdi-publicacao__cab {
	display: flex;
	align-items: center;
	gap: .7em;
	margin-bottom: .6em;
	line-height: 1.3;
}

.mdi-publicacao__data {
	color: var(--mdi-suave) !important;
	font-size: .82em;
	text-decoration: none;
}

.mdi-publicacao__texto img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
}

.mdi-publicacao__rodape {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em 1.2em;
	margin-top: .6em;
	color: var(--mdi-suave);
	font-size: .85em;
}

.mdi-publicar {
	margin-bottom: 1.4em;
	padding: 1em;
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo-alt);
}

.mdi-publicar__cab {
	display: flex;
	align-items: center;
	gap: .6em;
	margin-bottom: .6em;
	font-weight: 600;
}

.mdi-publicar__rodape {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .6em 1em;
	margin-top: .6em;
}

.mdi-publicar__rodape .mdi-ajuda {
	flex: 1;
	margin: 0;
}

.mdi-img-pre img {
	display: block;
	max-width: 100%;
	height: auto;
	margin-top: .6em;
	border-radius: 8px;
}

.mdi-img-pre--pub img {
	max-height: 240px;
}

/* Avaliações */
.mdi-resumo-av {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.2em 2em;
	margin-bottom: 1.2em;
}

.mdi-resumo-av__media {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .2em;
	min-width: 110px;
}

.mdi-resumo-av__media strong {
	color: var(--mdi-titulos);
	font-size: 2.6em;
	line-height: 1;
}

.mdi-resumo-av__media > span:last-child {
	color: var(--mdi-suave);
	font-size: .85em;
}

.mdi-resumo-av__barras {
	flex: 1;
	min-width: 200px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-resumo-av__barras li {
	display: flex;
	align-items: center;
	gap: .6em;
	margin: .2em 0;
	color: var(--mdi-suave);
	font-size: .85em;
}

.mdi-resumo-av__barras li > span:first-child {
	width: 2.4em;
}

.mdi-resumo-av__barras li > span:last-child {
	width: 2em;
	text-align: right;
}

.mdi-sem-avaliacoes {
	color: var(--mdi-suave);
}

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

.mdi-avaliacao {
	padding: 1em 0;
	border-top: 1px solid var(--mdi-borda);
}

.mdi-avaliacao__cab {
	display: flex;
	align-items: center;
	gap: .7em;
	line-height: 1.35;
}

.mdi-avatar,
.mdi img.avatar {
	border-radius: 50%;
}

.mdi-avaliacao__texto {
	margin-top: .5em;
}

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

.mdi-avaliacao__resposta {
	margin: .6em 0 0 1.2em;
	padding: .7em 1em;
	border-left: 3px solid var(--mdi-cor);
	border-radius: 0 8px 8px 0;
	background: var(--mdi-fundo-alt);
	font-size: .93em;
}

.mdi-avaliacao__resposta p {
	margin: .3em 0 0;
}

.mdi-avaliacao__rodape {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em 1em;
	margin-top: .4em;
}

.mdi-responder summary,
.mdi-avaliar summary,
.mdi-passados summary,
.mdi-contactar summary {
	color: var(--mdi-cor);
	font-weight: 600;
	cursor: pointer;
}

.mdi-responder form {
	margin-top: .5em;
}

.mdi-responder textarea {
	margin-bottom: .5em;
}

.mdi-avaliar {
	margin: 0 0 1em;
	padding: 1em 1.1em;
	border: 1px dashed var(--mdi-borda);
	border-radius: var(--mdi-raio);
}

.mdi-avaliar[open] summary {
	margin-bottom: .8em;
}

.mdi-estrelas-input__grupo {
	display: inline-flex;
	flex-direction: row-reverse;
	gap: .1em;
}

.mdi-estrelas-input__grupo input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.mdi-estrelas-input__grupo label {
	color: #d6d9de;
	font-size: 2em;
	line-height: 1;
	cursor: pointer;
	transition: color .1s, transform .1s;
}

.mdi-estrelas-input__grupo label:hover,
.mdi-estrelas-input__grupo label:hover ~ label,
.mdi-estrelas-input__grupo input:checked ~ label {
	color: #f5a623;
}

.mdi-estrelas-input__grupo input:focus-visible + label {
	outline: 2px solid var(--mdi-cor);
	outline-offset: 2px;
	border-radius: 4px;
}

/* Contactar */
.mdi-contactar {
	padding: 1em 1.2em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-contactar summary {
	display: flex;
	align-items: center;
	gap: .5em;
}

.mdi-contactar[open] summary {
	margin-bottom: 1em;
}

/* Eventos */
.mdi-eventos-lista {
	display: flex;
	flex-direction: column;
	gap: .8em;
}

.mdi-evento-cartao {
	display: flex;
	gap: 1em;
	padding: .9em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-evento-cartao--promo {
	border-color: #f5c56a;
	background: #fffaeb;
}

.mdi-evento-cartao__data {
	display: flex;
	flex: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 62px;
	border-radius: 10px;
	background: var(--mdi-cor);
	color: #fff;
	line-height: 1.05;
	text-transform: uppercase;
}

.mdi-evento-cartao__data span {
	font-size: .72em;
	letter-spacing: .06em;
}

.mdi-evento-cartao__data strong {
	font-size: 1.55em;
}

.mdi-evento-cartao__texto {
	flex: 1;
	min-width: 0;
}

.mdi .mdi-evento-cartao__titulo {
	margin: .3em 0 .2em;
	font-size: 1.02em;
	line-height: 1.3;
}

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

.mdi-evento-cartao__meta {
	margin: 0;
	color: var(--mdi-suave);
	font-size: .86em;
}

.mdi-evento-cartao__ent {
	display: flex;
	align-items: center;
	gap: .4em;
	margin: .4em 0 0;
	font-size: .86em;
}

.mdi-evento-cartao__ent a {
	color: var(--mdi-texto) !important;
	font-weight: 600;
	text-decoration: none;
}

.mdi-evento-cartao__img {
	flex: none;
	width: 120px;
	overflow: hidden;
	border-radius: 8px;
}

.mdi-evento-cartao__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mdi-evento-acoes {
	margin: -.4em 0 .4em .4em;
	font-size: .85em;
}

.mdi-form-evento {
	margin-bottom: 1.4em;
}

.mdi-form-evento > summary {
	list-style: none;
}

.mdi-form-evento > summary::-webkit-details-marker {
	display: none;
}

.mdi-form-evento[open] > summary {
	margin-bottom: 1em;
}

.mdi-form-evento form {
	padding: 1.2em;
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo-alt);
}

.mdi-passados {
	margin-top: 1.2em;
}

.mdi-passados .mdi-eventos-lista {
	margin-top: .8em;
	opacity: .75;
}

.mdi-rsvp {
	padding: 1em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-rsvp.is-a-enviar {
	opacity: .6;
	pointer-events: none;
}

.mdi-rsvp__contagem {
	margin: 0 0 .7em;
	color: var(--mdi-suave);
	font-size: .9em;
}

.mdi-rsvp__botoes {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em;
}

.mdi-rsvp__pessoas {
	display: inline-flex;
	align-items: center;
	gap: .3em;
	margin-left: auto;
	font-size: .85em;
}

.mdi-rsvp__pessoas select {
	min-height: 32px;
	padding: .2em .4em;
	border: 1px solid var(--mdi-borda);
	border-radius: 6px;
	background: var(--mdi-fundo);
}

/* Página de evento */
.mdi-evento__img {
	margin: 0 0 1.2em;
	overflow: hidden;
	border-radius: var(--mdi-raio);
}

.mdi-evento__img img {
	display: block;
	width: 100%;
	max-height: 420px;
	object-fit: cover;
}

.mdi .mdi-evento__titulo {
	margin: .3em 0 .2em;
	color: var(--mdi-titulos);
	font-size: 1.9em;
	line-height: 1.15;
}

.mdi-evento__ent {
	display: flex;
	align-items: center;
	gap: .5em;
	margin: 0 0 1.2em;
}

.mdi-evento__ent a {
	color: var(--mdi-titulos) !important;
	font-weight: 600;
	text-decoration: none;
}

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

.mdi-evento__factos {
	margin: 0 0 1em;
	padding: 0;
	list-style: none;
}

.mdi-evento__factos li {
	display: flex;
	align-items: center;
	gap: .6em;
	margin: 0 0 .5em;
}

.mdi-evento__factos .mdi-icone {
	color: var(--mdi-suave);
}

.mdi-codigo-promo code {
	padding: .2em .6em;
	border: 1px dashed var(--mdi-alerta);
	border-radius: 6px;
	background: #fffaeb;
	color: var(--mdi-alerta);
	font-size: 1.05em;
	font-weight: 700;
	letter-spacing: .05em;
}

/* Partilha */
.mdi-partilha-menu {
	position: absolute;
	z-index: 100001;
	display: flex;
	flex-direction: column;
	min-width: 200px;
	padding: 6px;
	border: 1px solid var(--mdi-borda);
	border-radius: 10px;
	background: var(--mdi-fundo);
	box-shadow: 0 12px 34px rgba(0, 0, 0, .16);
	font: 14px/1.4 system-ui, sans-serif;
}

.mdi-partilha-menu a,
.mdi-partilha-menu button {
	display: block;
	width: 100%;
	margin: 0;
	padding: .55em .8em;
	border: 0;
	border-radius: 6px;
	background: none;
	color: var(--mdi-texto);
	font: inherit;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}

.mdi-partilha-menu a:hover,
.mdi-partilha-menu button:hover,
.mdi-partilha-menu a:focus {
	background: var(--mdi-fundo-alt);
	outline: none;
}

/* Completude */
.mdi-completude {
	padding: 1em 1.2em;
	border: 1px solid #f5c56a;
	border-radius: var(--mdi-raio);
	background: #fffaeb;
}

.mdi-completude p {
	margin: 0 0 .5em;
}

.mdi-completude .mdi-barra span {
	background: var(--mdi-alerta);
}

.mdi-completude ul {
	display: flex;
	flex-wrap: wrap;
	gap: .3em 1.2em;
	margin: .7em 0 0;
	padding: 0;
	list-style: none;
	font-size: .88em;
}

.mdi-completude li::before {
	content: "○ ";
	color: var(--mdi-alerta);
}

/* ---------- Diretório ---------- */

.mdi .mdi-diretorio__titulo {
	margin: 0 0 .6em;
}

.mdi-pesquisa {
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	margin-bottom: 1em;
}

.mdi .mdi-pesquisa input[type="search"] {
	flex: 1 1 280px;
	min-height: 48px;
	margin: 0;
	padding: .6em 1.1em;
	border: 1px solid var(--mdi-borda);
	border-radius: 999px;
	background: var(--mdi-fundo);
	color: var(--mdi-texto);
	font: inherit;
	font-size: 1em;
}

.mdi-pesquisa .mdi-btn {
	min-height: 48px;
}

.mdi-tipos-nav ul {
	display: flex;
	gap: .4em;
	margin: 0 0 1em;
	padding: 0 0 .2em;
	overflow-x: auto;
	list-style: none;
	scrollbar-width: thin;
}

.mdi-tipos-nav li {
	flex: none;
	margin: 0;
}

.mdi-tipos-nav a {
	display: block;
	padding: .45em .9em;
	border: 1px solid var(--mdi-borda);
	border-radius: 999px;
	background: var(--mdi-fundo);
	color: var(--mdi-texto) !important;
	font-size: .88em;
	text-decoration: none !important;
	white-space: nowrap;
}

.mdi-tipos-nav a.is-ativo {
	border-color: var(--mdi-titulos);
	background: var(--mdi-titulos);
	color: var(--mdi-fundo) !important;
}

.mdi-chips {
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
	margin: 0 0 1.4em;
	padding: 0;
	list-style: none;
}

.mdi-chips a {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	padding: .35em .8em;
	border-radius: 8px;
	background: var(--mdi-fundo-alt);
	color: var(--mdi-texto) !important;
	font-size: .86em;
	text-decoration: none !important;
}

.mdi-chips a:hover {
	background: color-mix(in srgb, var(--mdi-cor) 12%, var(--mdi-fundo));
	color: var(--mdi-cor) !important;
}

.mdi-chips span {
	color: var(--mdi-suave);
	font-size: .9em;
}

.mdi-diretorio__grelha {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: 1.5em;
	align-items: start;
}

.mdi-filtros-caixa {
	position: sticky;
	top: 90px;
	padding: 1em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-filtros-caixa > summary {
	color: var(--mdi-titulos);
	font-weight: 700;
	cursor: pointer;
}

.mdi-filtros-caixa[open] > summary {
	margin-bottom: .9em;
}

.mdi-filtros__mais summary {
	margin: .4em 0;
	color: var(--mdi-cor);
	font-size: .9em;
	font-weight: 600;
	cursor: pointer;
}

.mdi-filtros .mdi-check {
	font-size: .9em;
}

.mdi-resultados__barra {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .6em 1em;
	margin-bottom: 1em;
}

.mdi-resultados__n {
	flex: 1;
	margin: 0;
	color: var(--mdi-suave);
	font-size: .9em;
}

.mdi-ordenar {
	display: flex;
	align-items: center;
	gap: .4em;
	margin: 0;
	font-size: .88em;
}

.mdi-ordenar select {
	min-height: 36px;
	padding: .3em .5em;
	border: 1px solid var(--mdi-borda);
	border-radius: 8px;
	background: var(--mdi-fundo);
	color: var(--mdi-texto);
	font: inherit;
}

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

.mdi-vistas a {
	padding: .4em .8em;
	color: var(--mdi-texto) !important;
	font-size: .85em;
	text-decoration: none !important;
}

.mdi-vistas a + a {
	border-left: 1px solid var(--mdi-borda);
}

.mdi-vistas a.is-ativo {
	background: var(--mdi-titulos);
	color: var(--mdi-fundo) !important;
}

/* Cartões */
.mdi-cartoes--grelha {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 1em;
}

.mdi-cartoes--lista {
	display: flex;
	flex-direction: column;
	gap: .7em;
}

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

.mdi-cartao:hover {
	box-shadow: 0 6px 20px rgba(0, 0, 0, .07);
}

.mdi-cartao__capa {
	display: block;
	height: 110px;
	background-color: var(--mdi-fundo-alt);
	background-image: linear-gradient(135deg, color-mix(in srgb, var(--mdi-cor) 22%, var(--mdi-fundo)), var(--mdi-fundo-alt));
	background-position: center;
	background-size: cover;
}

.mdi-cartao__corpo {
	display: flex;
	gap: .8em;
	padding: .9em 1em 1em;
}

.mdi-cartao--grelha .mdi-cartao__corpo {
	flex-direction: column;
	gap: .5em;
	padding-top: 0;
}

.mdi-cartao--grelha .mdi-cartao__logo {
	position: relative;
	z-index: 1;
	margin-top: -28px;
}

.mdi-cartao--grelha .mdi-cartao__logo .mdi-logo {
	border: 3px solid var(--mdi-fundo);
}

.mdi-cartao__texto {
	min-width: 0;
}

.mdi .mdi-cartao__nome {
	margin: 0 0 .15em;
	font-size: 1.02em;
	line-height: 1.3;
}

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

.mdi-cartao__nome a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.mdi-cartao__meta {
	margin: 0 0 .3em;
	color: var(--mdi-suave);
	font-size: .84em;
}

.mdi-cartao__estado {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .2em .8em;
	margin: 0 0 .3em;
	font-size: .88em;
}

.mdi-cartao__curta {
	display: -webkit-box;
	margin: 0;
	overflow: hidden;
	color: var(--mdi-texto);
	font-size: .88em;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

/* Paginação */
.mdi-paginacao {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .3em;
	margin: 1.6em 0 .4em;
}

.mdi-paginacao .page-numbers {
	min-width: 38px;
	padding: .45em .8em;
	border: 1px solid var(--mdi-borda);
	border-radius: 999px;
	color: var(--mdi-texto) !important;
	font-size: .88em;
	text-align: center;
	text-decoration: none !important;
}

.mdi-paginacao .current {
	border-color: var(--mdi-cor);
	background: var(--mdi-cor);
	color: #fff !important;
}

/* ---------- Agenda ---------- */

.mdi-filtros--agenda {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0 1em;
	margin-bottom: 1em;
	padding: 1em 1em 0;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-filtros--agenda .mdi-campo {
	flex: 1 1 160px;
}

.mdi-campo--botao {
	flex: 0 0 auto !important;
}

.mdi .mdi-agenda__dia {
	margin: 1.4em 0 .6em;
	color: var(--mdi-titulos);
	font-size: 1em;
	text-transform: none;
}

/* ---------- Painel ---------- */

.mdi-painel__cab {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .8em;
	margin-bottom: 1.2em;
}

.mdi .mdi-painel__titulo {
	display: flex;
	align-items: center;
	gap: .3em;
	margin: 0;
	color: var(--mdi-titulos);
	font-size: 1.35em;
}

.mdi-painel__lista {
	display: flex;
	flex-direction: column;
	gap: .8em;
	margin-bottom: 1em;
}

.mdi-painel-item {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1em;
	padding: 1em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-painel-item__texto {
	flex: 1;
	min-width: 200px;
}

.mdi-painel-item h3 {
	margin: 0;
	font-size: 1.05em;
}

.mdi-painel-item h3 a {
	color: var(--mdi-titulos) !important;
	text-decoration: none;
}

.mdi-painel-item p {
	margin: .1em 0 .3em;
}

.mdi-painel-item__acoes {
	display: flex;
	gap: .4em;
}

.mdi-mini-numeros {
	display: flex;
	flex-wrap: wrap;
	gap: .2em 1.2em;
	margin: 0;
	padding: 0;
	color: var(--mdi-suave);
	font-size: .85em;
	list-style: none;
}

.mdi-mini-numeros strong {
	color: var(--mdi-titulos);
}

.mdi-vazio {
	padding: 1.6em;
	border: 1px dashed var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
}

.mdi-vazio h3 {
	margin: 0 0 .6em;
}

.mdi-vazio ul {
	margin: 0 0 1em 1.2em;
}

.mdi-painel-ent__cab {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1em;
	margin-bottom: 1.2em;
}

.mdi-painel-ent__cab > div {
	flex: 1;
	min-width: 200px;
}

.mdi-painel-ent__cab p {
	margin: .2em 0 0;
}

.mdi-acoes-rapidas {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: .6em;
	margin-bottom: 1.2em;
}

.mdi-acoes-rapidas a {
	display: flex;
	align-items: center;
	gap: .6em;
	padding: .8em 1em;
	border: 1px solid var(--mdi-borda);
	border-radius: var(--mdi-raio);
	background: var(--mdi-fundo);
	color: var(--mdi-titulos) !important;
	font-size: .9em;
	font-weight: 600;
	text-decoration: none !important;
}

.mdi-acoes-rapidas a:hover {
	border-color: var(--mdi-cor);
	color: var(--mdi-cor) !important;
}

.mdi-acoes-rapidas .mdi-icone {
	color: var(--mdi-cor);
}

.mdi-numeros {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: .6em;
	margin-bottom: 1em;
}

.mdi-numero {
	padding: .8em .9em;
	border-radius: 8px;
	background: var(--mdi-fundo-alt);
}

.mdi-numero strong {
	display: block;
	color: var(--mdi-titulos);
	font-size: 1.5em;
	line-height: 1.1;
}

.mdi-numero span {
	color: var(--mdi-suave);
	font-size: .8em;
}

.mdi-grafico {
	display: flex;
	align-items: flex-end;
	gap: 2px;
	height: 90px;
	padding-top: .4em;
	border-bottom: 1px solid var(--mdi-borda);
}

.mdi-grafico__barra {
	flex: 1;
	min-height: 2px;
	border-radius: 2px 2px 0 0;
	background: color-mix(in srgb, var(--mdi-cor) 70%, transparent);
}

.mdi-grafico__barra:hover {
	background: var(--mdi-cor);
}

.mdi-grafico__eixo {
	display: flex;
	justify-content: space-between;
	margin: .3em 0 0;
	color: var(--mdi-suave);
	font-size: .78em;
}

.mdi-equipa {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-equipa li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em;
	margin: 0 0 .5em;
}

.mdi-avatares {
	display: flex;
	flex-wrap: wrap;
	gap: .3em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdi-pedido__ent {
	display: flex;
	align-items: center;
	gap: .8em;
	margin-bottom: 1em;
}

.mdi-pedido__ent p {
	margin: 0;
}

.mdi-pedido__ent .mdi-bloco__titulo {
	margin: 0;
}

.mdi-bloco--seguidas {
	margin-top: 1.4em;
}

/* Feed do BuddyBoss: logótipo no lugar do avatar */
.mdi-avatar-feed .mdi-logo {
	--mdi-logo: 48px;
}

/* ---------- Responsivo (pelo espaço disponível, não pelo ecrã) ---------- */

@container mdi (max-width: 900px) {
	.mdi-perfil__grelha,
	.mdi-evento__grelha {
		grid-template-columns: minmax(0, 1fr);
	}

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

	.mdi-filtros-caixa {
		position: static;
	}
}

@container mdi (max-width: 640px) {
	.mdi-cab__capa {
		height: 160px;
	}

	.mdi-cab__corpo {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"logo"
			"info"
			"acoes";
		padding: 0 1em 1em;
	}

	.mdi-cab__logo .mdi-logo {
		--mdi-logo: 92px !important;
	}

	.mdi .mdi-cab__nome {
		font-size: 1.4em;
	}

	.mdi .mdi-btn--ico span {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(1px, 1px, 1px, 1px);
	}

	.mdi .mdi-btn--ico {
		width: 42px;
		padding: 0;
	}

	.mdi-grelha-2,
	.mdi-grelha-3 {
		grid-template-columns: minmax(0, 1fr);
	}

	.mdi-grelha-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mdi-evento-cartao__img {
		display: none;
	}

	.mdi-bloco,
	.mdi-caixa {
		padding: 1em;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mdi * {
		transition: none !important;
	}
}
