/*
 * Pele dos cartões.
 *
 * Estiliza as visualizações NATIVAS do Tainacan (Fichas, Cartões, Masonry,
 * Tabela, Lista). Não há JavaScript neste recurso: o markup é o do plugin e
 * aqui só se dá a ele uma superfície.
 *
 * Os seletores são deliberadamente presos a .tnc-skin no body. Sem isso, o
 * estilo valeria com o recurso desligado e em qualquer página — e é essa
 * frouxidão que faz tema atrapalhar plugin.
 */

.tnc-skin .tainacan-card,
.tnc-skin .tainacan-record,
.tnc-skin .tainacan-masonry-item,
.tnc-skin .tainacan-grid-item,
.tnc-skin .tainacan-list-item {
	background: #fff;
	border-radius: var(--tnc-radius, 10px);
	overflow: hidden;
	position: relative;
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.tnc-skin--soft .tainacan-card,
.tnc-skin--soft .tainacan-record,
.tnc-skin--soft .tainacan-masonry-item,
.tnc-skin--soft .tainacan-grid-item,
.tnc-skin--soft .tainacan-list-item {
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06), 0 4px 12px rgba(0, 0, 0, 0.05);
}

.tnc-skin--outline .tainacan-card,
.tnc-skin--outline .tainacan-record,
.tnc-skin--outline .tainacan-masonry-item,
.tnc-skin--outline .tainacan-grid-item,
.tnc-skin--outline .tainacan-list-item {
	border: 1px solid rgba(0, 0, 0, 0.12);
}

.tnc-skin--flat .tainacan-card,
.tnc-skin--flat .tainacan-record,
.tnc-skin--flat .tainacan-masonry-item,
.tnc-skin--flat .tainacan-grid-item,
.tnc-skin--flat .tainacan-list-item {
	background: var(--tnc-accent-soft, #eef6f7);
}

/* Barra de acento no alto do cartão: dá ao conjunto um eixo visual. */
.tnc-skin .tainacan-card::before,
.tnc-skin .tainacan-record::before {
	background: var(--tnc-accent, #187181);
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.tnc-skin .tainacan-card:hover,
.tnc-skin .tainacan-record:hover,
.tnc-skin .tainacan-masonry-item:hover,
.tnc-skin .tainacan-grid-item:hover {
	transform: translateY(-2px);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08), 0 10px 24px rgba(0, 0, 0, 0.08);
}

.tnc-skin .tainacan-card:focus-within,
.tnc-skin .tainacan-record:focus-within,
.tnc-skin .tainacan-grid-item:focus-within {
	outline: 2px solid var(--tnc-accent, #187181);
	outline-offset: 2px;
}

/* O item aberto na gaveta fica marcado: a pessoa não perde o lugar. */
.tnc-skin .tnc-is-previewed {
	outline: 2px solid var(--tnc-accent, #187181);
	outline-offset: 2px;
}

/* Imagem: inteira ou preenchendo, conforme a escolha em Personalizar. */
.tnc-skin .tainacan-card img,
.tnc-skin .tainacan-record img,
.tnc-skin .tainacan-grid-item img,
.tnc-skin .tainacan-masonry-item img {
	object-fit: var(--tnc-image-fit, contain);
	object-position: center;
}

/* Rótulos de metadado em maiúsculas discretas; o valor é que tem de ler bem. */
.tnc-skin .tainacan-card .metadata-label,
.tnc-skin .tainacan-record .metadata-label,
.tnc-skin .tainacan-list-item .metadata-label {
	color: rgba(0, 0, 0, 0.55);
	font-size: 0.72em;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.tnc-skin--title-theme .tainacan-card .metadata-type-core_title,
.tnc-skin--title-theme .tainacan-record .metadata-type-core_title,
.tnc-skin--title-theme .tainacan-grid-item .tainacan-grid-item-title {
	font-family: var(--tnc-heading-font, inherit);
	font-weight: 600;
}

/* Termos como etiquetas. Um caminho hierárquico inteiro é uma etiqueta só. */
.tnc-skin--chips .tainacan-card .metadata-type-taxonomy .multivalue-separator,
.tnc-skin--chips .tainacan-record .metadata-type-taxonomy .multivalue-separator {
	display: none;
}

.tnc-skin--chips .tainacan-card .metadata-type-taxonomy a,
.tnc-skin--chips .tainacan-record .metadata-type-taxonomy a,
.tnc-skin--chips .tainacan-list-item .metadata-type-taxonomy a {
	background: var(--tnc-accent-soft, #eef6f7);
	border-radius: 999px;
	color: var(--tnc-accent-ink, #10545f);
	display: inline-block;
	font-size: 0.85em;
	line-height: 1.3;
	margin: 0 0.25em 0.3em 0;
	padding: 0.15em 0.65em;
	text-decoration: none;
}

.tnc-skin--chips .tainacan-card .metadata-type-taxonomy a:hover,
.tnc-skin--chips .tainacan-record .metadata-type-taxonomy a:hover {
	background: var(--tnc-accent, #187181);
	color: #fff;
}

/*
 * Harmonizar as cores do Tainacan.
 *
 * O bloco Busca facetada imprime as próprias cores como estilo inline no
 * invólucro, de modo que uma regra de folha de estilo não ganha dele sem
 * !important. É o único lugar do tema onde ele aparece, e é por isso.
 */
.tnc-skin--harmonize .tainacan-faceted-search,
.tnc-skin--harmonize .tainacan-wrapper {
	--tainacan-primary: var(--tnc-accent-soft, #eef6f7) !important;
	--tainacan-secondary: var(--tnc-accent, #187181) !important;
	--tainacan-input-color: var(--tnc-accent-ink, #10545f) !important;
}

@media (prefers-reduced-motion: reduce) {
	.tnc-skin .tainacan-card,
	.tnc-skin .tainacan-record,
	.tnc-skin .tainacan-masonry-item,
	.tnc-skin .tainacan-grid-item,
	.tnc-skin .tainacan-list-item {
		transition: none;
	}

	.tnc-skin .tainacan-card:hover,
	.tnc-skin .tainacan-record:hover,
	.tnc-skin .tainacan-masonry-item:hover,
	.tnc-skin .tainacan-grid-item:hover {
		transform: none;
	}
}
