/**
 * Listagem — Figma 2305:6390 / 2322:1473
 * Tokens: White (página), Neutral/01 #F6F5F2 (pills/CTA), Neutral/02 #DEDCD7,
 * Black #46272D, Brand #00968F, link #005F6B, muted #565656
 */

.gl-listing {
	background: var(--color-white);
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - 72px); /* viewport sob o header — paginação cola no footer */
	--tainacan-secondary: var(--color-brand);
	--tainacan-primary: #d9eced;
	--tainacan-heading-color: var(--color-black);
	--tainacan-label-color: var(--color-black);
	--tainacan-info-color: var(--color-text-muted);
	--tainacan-input-color: var(--color-text);
	--tainacan-input-border-color: var(--color-neutral-02);
	--tainacan-item-hover-background-color: var(--color-white);
	--tainacan-blue1: var(--color-brand);
	--tainacan-blue2: #007a74;
	--tainacan-background-color: var(--color-white);
}

/* Área Vue: fundo branco contínuo */
.gl-listing #tainacan-items-page,
.gl-listing .theme-items-list,
.gl-listing .items-list-area,
.gl-listing .above-search-control {
	background: transparent !important;
}

/* ---- Filtros de contexto (taxonomia) ---- */
.gl-active-filters {
	padding: 24px 32px 0;
}

.gl-active-filters__inner {
	max-width: 1302px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	padding: 14px 18px;
	border: 1px solid var(--color-neutral-02, #dedcd7);
	border-radius: var(--border-radius-md, 6px);
	background: var(--color-neutral-01, #f6f5f2);
	box-sizing: border-box;
}

.gl-active-filters__count {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	margin: 0;
	font-family: var(--font-family-base);
	line-height: 1.2;
	color: var(--color-neutral-05, #565656);
}

.gl-active-filters__count-number {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--color-brand, #00968f);
}

.gl-active-filters__count-label {
	font-size: 13px;
	font-weight: 500;
	text-transform: lowercase;
}

.gl-active-filters__chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 12px;
	min-width: 0;
}

.gl-active-filters__heading {
	font-family: var(--font-family-base);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 1px;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--color-neutral-05, #565656);
}

.gl-active-filters__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gl-active-filters__item {
	margin: 0;
	padding: 0;
	list-style: none;
}

.gl-active-filters__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	max-width: min(100%, 420px);
	padding: 6px 8px 6px 12px;
	border: 1px solid var(--color-neutral-02, #dedcd7);
	border-radius: var(--border-radius-pill, 1000px);
	background: var(--color-white);
	box-sizing: border-box;
}

.gl-active-filters__chip-label {
	font-size: 12px;
	font-weight: 700;
	line-height: 1.45;
	color: var(--color-black, #46272d);
	white-space: nowrap;
}

.gl-active-filters__chip-sep {
	color: var(--color-neutral-03, #c1b49a);
	font-size: 12px;
	line-height: 1;
}

.gl-active-filters__chip-value {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	color: var(--color-text-link, #005f6b);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gl-active-filters__chip-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: transparent;
	color: var(--color-neutral-05, #565656);
	font-size: 18px;
	line-height: 1;
	text-decoration: none;
	flex-shrink: 0;
}

.gl-active-filters__chip-remove:hover,
.gl-active-filters__chip-remove:focus-visible {
	color: var(--color-brand, #00968f);
	background: var(--color-neutral-01, #f6f5f2);
	outline: none;
}

.gl-active-filters + .gl-ai-overview {
	padding-top: 16px;
}

/* Tags nativas do Tainacan (itens encontrados + filtros aplicados) */
.gl-listing .filter-tags-list {
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 8px !important;
	padding: 0 0 4px !important; /* gap da results-col já separa da toolbar */
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 10px 16px !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
	color: var(--color-neutral-05, #565656) !important;
	box-sizing: border-box;
}

.gl-listing .filter-tags-list .filter-tags-info {
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: baseline !important;
	gap: 8px 16px !important;
	margin: 0 !important;
	white-space: normal !important;
}

.gl-listing .filter-tags-list .filter-tags-info > span {
	display: inline-flex !important;
	align-items: baseline !important;
	gap: 4px !important;
	margin: 0 !important;
}

.gl-listing .filter-tags-list .filter-tags-info strong {
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em;
	color: var(--color-brand, #00968f) !important;
}

.gl-listing .filter-tags-list #button-clear-all {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	color: var(--color-text-link, #005f6b) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: underline;
	text-decoration-color: currentColor;
	text-underline-offset: 2px;
	cursor: pointer;
}

.gl-listing .filter-tags-list #button-clear-all:hover {
	color: var(--color-brand, #00968f) !important;
	text-decoration-color: currentColor;
}

.gl-listing .filter-tags-list .filter-tag {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 8px 0 0 !important;
	padding: 6px 28px 6px 12px !important;
	border: 1px solid var(--color-neutral-02, #dedcd7) !important;
	border-radius: var(--border-radius-pill, 1000px) !important;
	background: var(--color-neutral-01, #f6f5f2) !important;
	box-shadow: none !important;
}

.gl-listing .filter-tags-list .filter-tag .filter-tag-metadatum-name {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: var(--color-black, #46272d) !important;
	padding-right: 0 !important;
	max-width: 28vw;
}

.gl-listing .filter-tags-list .filter-tag .filter-tag-metadatum-value {
	font-size: 12px !important;
	font-weight: 500 !important;
	color: var(--color-text-link, #005f6b) !important;
	max-width: 36vw;
}

.gl-listing .filter-tags-list .filter-tag .tag.is-delete {
	right: 4px !important;
	top: 50% !important;
	transform: translateY(-50%);
	width: 18px !important;
	height: 18px !important;
}

/* ---- AI overview — Figma 2305:7304 ---- */
.gl-ai-overview {
	padding: 24px 32px 32px; /* espaço até o grid filtros|resultados */
}

.gl-ai-overview__inner {
	max-width: 1302px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.gl-ai-overview__content {
	display: flex;
	align-items: flex-start;
	gap: 17px;
	padding: 24px 24px 24px 16px;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background: var(--color-white);
	border: 1px solid var(--color-neutral-02);
	border-radius: 6px 6px 0 0;
	box-sizing: border-box;
}

.gl-ai-overview__content > * {
	position: relative;
	z-index: 1;
}

.gl-ai-overview__icon {
	display: block;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.gl-ai-overview__text {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 17px;
}

body .gl-ai-overview h2.gl-ai-overview__title,
.gl-ai-overview__title {
	margin: 0;
	font-family: var(--font-family-base);
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: 1px;
	line-height: 1.1 !important;
	text-transform: uppercase;
	color: var(--color-brand, #00968f) !important;
}

.gl-ai-overview__body {
	padding: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.45;
	color: var(--color-neutral-05, #565656);
	width: 100%;
}

.gl-ai-overview__body p {
	margin: 0 0 1em;
}

.gl-ai-overview__body p:last-child {
	margin-bottom: 0;
}

.gl-ai-overview.is-loading .gl-ai-overview__body {
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}

.gl-ai-overview.is-loading .gl-ai-overview__placeholder {
	display: block;
	height: 0.85em;
	margin: 0;
	border-radius: 4px;
	overflow: hidden;
	background-color: rgba(0, 0, 0, 0.06);
	background-image: linear-gradient(
		90deg,
		rgba(0, 0, 0, 0.05) 0%,
		rgba(0, 0, 0, 0.11) 40%,
		rgba(0, 0, 0, 0.05) 80%
	);
	background-size: 200% 100%;
	animation: gl-chat-skeleton-shimmer 1.35s ease-in-out infinite;
}

/* Duas “linhas de parágrafo”: cheia → curta, cheia → curta. */
.gl-ai-overview.is-loading .gl-ai-overview__placeholder:nth-child(1) {
	width: 100%;
	animation-delay: 0ms;
}

.gl-ai-overview.is-loading .gl-ai-overview__placeholder:nth-child(2) {
	width: 68%;
	margin-bottom: 0.65em;
	animation-delay: 120ms;
}

.gl-ai-overview.is-loading .gl-ai-overview__placeholder:nth-child(3) {
	width: 96%;
	animation-delay: 240ms;
}

.gl-ai-overview.is-loading .gl-ai-overview__placeholder:nth-child(4) {
	width: 54%;
	animation-delay: 360ms;
}

.gl-ai-overview[hidden] {
	display: none !important;
}

.gl-ai-overview__cta[hidden] {
	display: none !important;
}

.gl-ai-overview__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 100%;
	margin: 0;
	padding: 12px 24px;
	border: 1px solid var(--color-neutral-02);
	border-top: none;
	border-radius: 0;
	background: var(--color-neutral-01, #f6f5f2);
	color: var(--color-black, #46272d);
	font-family: var(--font-family-base);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.5px;
	line-height: 1.15;
	text-transform: uppercase;
	cursor: pointer;
	box-sizing: border-box;
}

.gl-ai-overview__cta .gl-ia-icon {
	display: block;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.gl-ai-overview__cta:hover {
	color: var(--color-brand);
}

/* ---- Faceted shell / grid ---- */
.gl-listing__faceted {
	padding: 0 32px 40px; /* 40px = espaço até a paginação (Figma) */
	max-width: 1366px;
	margin: 0 auto;
	box-sizing: border-box;
	width: 100%;
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start; /* conteúdo (cards) sempre no topo */
	background: transparent;
	/* Reserva o slot da listagem antes do Vue montar (evita pulo). */
	min-height: 480px;
}

/* Fundo branco contínuo sob filtros + cards (Figma) */
body.gl-shell.archive,
body.gl-shell[class*="tax-tnc_tax"],
body.gl-shell.post-type-archive,
.gl-listing {
	background: var(--color-white) !important;
}

.gl-listing__faceted .tainacan-search-container,
.gl-listing #tainacan-items-page,
.gl-listing .theme-items-list {
	font-family: var(--font-family-base);
}

/* Vue shell: não esticar/centralizar a lista quando há poucos resultados */
.gl-listing #tainacan-items-page,
.gl-listing .tainacan-search-container {
	flex: 0 0 auto !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	align-self: stretch !important;
}

/*
 * Grid Figma 2305:6390 / 2321:7400
 * Coluna filtros 339px | gutter ~20px | coluna resultados (toolbar + cards).
 * A coluna direita é um flex (.gl-listing__results-col) para a sidebar NÃO
 * inflar a linha da toolbar quando há poucos cards (buraco).
 */
.gl-listing .theme-items-list {
	display: grid !important;
	grid-template-columns: 339px minmax(0, 1fr);
	grid-template-rows: auto !important;
	column-gap: 20px !important;
	row-gap: 0 !important;
	align-items: start !important;
	align-content: start !important;
	justify-items: stretch !important;
	justify-content: start !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	flex: 0 0 auto !important;
	box-sizing: border-box;
	background: transparent !important;
}

/* Coluna direita: toolbar + tags/cards empilhados no topo.
   Filhos diretos (antes do wrap JS) também ficam na col. 2 — evita cards
   na coluna dos filtros enquanto o Vue/menu ainda não montou. */
.gl-listing .gl-listing__results-col,
.gl-listing .theme-items-list > .search-control,
.gl-listing .theme-items-list > .items-list-area,
.gl-listing .theme-items-list > #items-list-area {
	grid-column: 2 !important;
	grid-row: 1 !important;
}

.gl-listing .gl-listing__results-col {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	gap: 24px !important; /* toolbar → tags/cards/empty (com ou sem filter-tags) */
	min-width: 0 !important;
	width: 100% !important;
	align-self: start !important;
	margin-bottom: 32px !important; /* respiro até paginação / footer */
	box-sizing: border-box;
}

/* Toolbar — só na coluna de resultados (Figma 2321:7325)
   Especificidade alta para vencer .search-control[data-v-*] { justify-content: space-between !important }
   grid-column fica a cargo de .gl-listing__results-col / seletor de filho direto acima. */
.gl-listing .theme-items-list .search-control,
.gl-listing .search-control {
	grid-row: auto !important;
	align-self: stretch !important;
	width: 100% !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	box-sizing: border-box;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center !important;
	justify-content: flex-start !important; /* Figma: grupos agrupados, não space-between */
	gap: 24px !important; /* Figma gap entre grupos */
	padding: 40px 0 0 !important; /* alinhado ao pt da coluna */
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
	color: var(--color-black, #46272d);
	min-height: 0 !important;
	height: auto !important;
	/* Cascata (gl-motion) deixa transform no toolbar → stacking context;
	   sem z-index, os cards (também com transform) pintam por cima do dropdown. */
	position: relative !important;
	z-index: 40 !important;
}

/* Sidebar filtros — coluna 1 (sem span de linhas) */
.gl-listing .filters-menu.modal,
.gl-listing .filters-menu,
.gl-listing .filters-menu.is-full-screen,
.gl-listing .filters-menu.is-active {
	grid-column: 1 !important;
	grid-row: 1 !important;
	align-self: start !important;
	position: relative !important;
	inset: auto !important;
	display: block !important;
	width: 339px !important;
	max-width: 339px !important;
	min-width: 0 !important;
	flex: none !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	padding: 40px 32px 32px !important; /* Figma 2305:6446 — pt 40 / px 32 / pb 32 */
	margin: 0 !important;
	background: var(--color-white) !important;
	border: none !important;
	border-right: 1px solid var(--color-neutral-02, #dedcd7) !important;
	box-shadow: none !important;
	box-sizing: border-box;
	overflow: visible !important;
	z-index: 1 !important;
	contain: layout;
}

.gl-listing .filters-menu .modal-background {
	display: none !important;
}

/* Cards — abaixo da toolbar; sempre no topo da coluna.
   grid-column fica a cargo de .gl-listing__results-col / seletor de filho direto. */
.gl-listing .items-list-area,
.gl-listing #items-list-area {
	grid-row: auto !important;
	align-self: stretch !important;
	flex: 0 0 auto !important;
	min-width: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
	overflow: visible !important;
	background: transparent !important;
	min-height: 0 !important;
	height: auto !important; /* vence Vue: height: 100% */
	position: relative !important;
}

.gl-listing .above-search-control,
.gl-listing #items-list-results {
	min-height: 0 !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	align-self: start !important;
}

/* Tainacan: min-height 50vh / 450px — força cards para o meio com poucos resultados */
.gl-listing .table-container,
.gl-listing .loading-container {
	min-height: 0 !important;
	height: auto !important;
	margin-top: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.gl-listing .gl-list-results {
	justify-content: flex-start !important;
	align-items: stretch !important;
	align-content: flex-start !important;
}

/* Respiro toolbar → resultados: gap em .gl-listing__results-col */

/*
 * Reserva a coluna dos filtros (339px) desde o 1º paint.
 * Só colapsa DEPOIS do boot (.gl-listing--settled), quando o usuário
 * fechou a sidebar — evita o pulo cards à esquerda → direita no load.
 */
.gl-listing.gl-listing--settled .theme-items-list:not(.is-filters-menu-open) {
	grid-template-columns: minmax(0, 1fr);
}

.gl-listing.gl-listing--settled .theme-items-list:not(.is-filters-menu-open) .gl-listing__results-col,
.gl-listing.gl-listing--settled .theme-items-list:not(.is-filters-menu-open) > .search-control,
.gl-listing.gl-listing--settled .theme-items-list:not(.is-filters-menu-open) > .items-list-area,
.gl-listing.gl-listing--settled .theme-items-list:not(.is-filters-menu-open) > #items-list-area {
	grid-column: 1 !important;
}

.gl-listing.gl-listing--settled .theme-items-list:not(.is-filters-menu-open) .filters-menu {
	display: none !important;
}

/* Botões da toolbar — vence CSS inline/scoped do Tainacan Vue */
.gl-listing .theme-items-list .search-control .button,
.gl-listing .theme-items-list .search-control .button.is-white,
.gl-listing .theme-items-list .search-control .search-control-item .button,
.gl-listing .theme-items-list .search-control .search-control-item .button.is-white,
.gl-listing .theme-items-list .search-control .dropdown .button,
.gl-listing .theme-items-list .search-control .dropdown-trigger .button {
	color: var(--color-text-link, #005f6b) !important;
	font-family: var(--font-family-base) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	box-shadow: none !important;
	background: transparent !important;
	padding: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	border: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	vertical-align: middle;
}

.gl-listing .search-control a {
	color: var(--color-text-link, #005f6b) !important;
	font-family: var(--font-family-base) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	text-decoration: none;
}

.gl-listing .search-control .label,
.gl-listing .search-control-item .label,
.gl-listing .search-control .field .label {
	color: var(--color-black, #46272d) !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	line-height: 1.45 !important;
	margin: 0 !important;
	margin-inline-end: 0 !important; /* anula style inline -10px do Tainacan */
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	height: auto !important;
	min-height: 0 !important;
	white-space: nowrap;
}

/* Esconde label mobile duplicado (“Ver em”) na toolbar desktop */
.gl-listing .search-control .label.is-hidden-widescreen {
	display: none !important;
}

.gl-listing .search-control .gray-icon,
.gl-listing .search-control .tainacan-icon {
	color: var(--color-text-link, #005f6b) !important;
	font-size: 14px !important;
	line-height: 1 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	padding: 0 !important; /* padding do Tainacan colidia com width fixo */
	margin: 0 !important;
	box-sizing: content-box;
}

/* Bulma .icon usa margins negativas — causa overlap com “Ordenar” */
.gl-listing .theme-items-list .search-control .icon,
.gl-listing .theme-items-list .search-control .icon.is-small,
.gl-listing .theme-items-list .search-control .button .icon {
	margin: 0 !important;
	padding: 0 !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
}

.gl-listing .search-control-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	flex: 0 0 auto !important;
}

/* Filtros: ícone + texto (Figma gap 6px) */
.gl-listing .theme-items-list .search-control .search-control-item--filters-button .button,
.gl-listing .theme-items-list .search-control .search-control-item--filters-button .button.is-white {
	gap: 6px !important;
	color: var(--color-black, #46272d) !important;
}

/* Ordenar: esconde chevron extra do botão de direção (Figma só tem sort-icon) */
.gl-listing #tainacanSortingDirectionButton .icon:not(.gray-icon),
.gl-listing #tainacanSortingDirectionButton .tainacan-icon-arrowdown {
	display: none !important;
}

.gl-listing #tainacanSortingDirectionButton {
	gap: 0 !important;
}

/* Visualização: ícone + valor + chevron (Figma gap 4px) */
.gl-listing #tainacanViewModesButton {
	gap: 4px !important;
}

.gl-listing #tainacanViewModesButton .view-mode-icon {
	margin: 0 !important;
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
}

/* Dropdown de visualização — espaço ícone ↔ texto */
.gl-listing .search-control .dropdown-menu .dropdown-item,
.gl-listing .search-control .dropdown-content .dropdown-item {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 12px !important;
}

.gl-listing .search-control .dropdown-menu .dropdown-item .gray-icon,
.gl-listing .search-control .dropdown-menu .dropdown-item .icon,
.gl-listing .search-control .dropdown-content .dropdown-item .gray-icon,
.gl-listing .search-control .dropdown-content .dropdown-item .icon {
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	padding: 0 !important;
	margin: 0 !important;
	flex-shrink: 0;
}

/* Sem modo slideshow / botão Slides */
.gl-listing .search-control-item--full-screen-view-mode {
	display: none !important;
}

/* Bulma field/addons — alinha label + dropdown na mesma linha */
.gl-listing .theme-items-list .search-control .field,
.gl-listing .theme-items-list .search-control .field-body,
.gl-listing .theme-items-list .search-control .field.has-addons {
	display: inline-flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	min-height: 0 !important;
}

.gl-listing .theme-items-list .search-control .field.has-addons .control,
.gl-listing .theme-items-list .search-control .dropdown,
.gl-listing .theme-items-list .search-control .dropdown-trigger {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	height: auto !important;
	min-height: 0 !important;
}

/* ---- Filters — Figma 2305:6446 ---- */
.gl-listing .filters-menu {
	font-family: var(--font-family-base);
	font-size: 14px;
	line-height: 1.45;
	color: var(--color-neutral-05, #565656);
}

.gl-listing .filters-menu .modal-content,
.gl-listing .filters-menu .animation-content {
	background: transparent !important;
	box-shadow: none !important;
	border-right: none;
	padding: 0 !important; /* padding já no .filters-menu */
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
	overflow-x: visible !important;
}

/* Header: título 18/Bold + “Recolher todos” (gap 12) + pb 16 */
.gl-listing .filters-menu .has-text-weight-semibold,
.gl-listing .filters-submenu-header-label {
	color: var(--color-black, #46272d) !important;
	font-family: var(--font-family-base) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.gl-listing .filters-menu .button.link-style.collapse-all,
.gl-listing .button.link-style.collapse-all {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0 !important;
	color: var(--color-text-link, #005f6b) !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

.gl-listing .filters-menu .button.link-style.collapse-all .collapse-all__text {
	color: inherit !important;
}

/* “Recolher todos” — bullet do layout, não seta */
.gl-listing .filters-menu .button.link-style.collapse-all .icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 8px !important;
	height: 8px !important;
	min-width: 8px !important;
	margin: 0 4px 0 0 !important;
	padding: 0 !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

.gl-listing .filters-menu .button.link-style.collapse-all .icon::before {
	content: none !important;
	display: none !important;
}

.gl-listing .filters-menu .button.link-style.collapse-all .tainacan-icon {
	display: block !important;
	width: 4px !important;
	height: 4px !important;
	border-radius: 50%;
	background: currentColor !important;
	background-image: none !important;
	transform: none !important;
}

.gl-listing .filters-menu .button.link-style.collapse-all .tainacan-icon::before {
	content: none !important;
	display: none !important;
}

.gl-listing .filters-menu br {
	display: none !important;
}

.gl-listing .filters-components-list {
	padding-top: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.gl-listing .field.filter-item-forms {
	margin-bottom: 0 !important;
	padding: 0 0 16px !important; /* Figma: pb 16 por grupo */
	border-bottom: none !important;
}

.gl-listing .filters-menu .collapse-trigger .label,
.gl-listing .filters-menu .collapse-label,
.gl-listing .filter-label {
	color: var(--color-black, #46272d) !important;
	font-family: var(--font-family-base) !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	font-size: 12px !important;
	line-height: 1.1 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	justify-content: flex-start;
	gap: 6px;
}

.gl-listing .filters-menu .collapse-trigger .label,
.gl-listing .filter-label {
	width: 100%;
}

/*
 * Título do grupo: sem scrollbar “pílula” (Tainacan usa overflow-y:auto
 * com scrollHeight 1px maior que o clientHeight).
 */
.gl-listing .filters-menu .collapse-label {
	width: auto !important;
	max-width: 100%;
	flex: 1 1 auto;
	overflow: visible !important;
	overflow-x: visible !important;
	overflow-y: visible !important;
	text-overflow: clip !important;
	white-space: normal !important;
	height: auto !important;
	max-height: none !important;
}

/*
 * Sanfonas — chevron Figma 10×10 stroke #46272D
 * Tainacan aplica margin-left:-8px no .collapse-trigger; overflow-x:hidden
 * no .animation-content cortava o chevron.
 */
.gl-listing .filters-menu .collapse-trigger {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

.gl-listing .filters-menu button.label {
	display: inline-flex !important;
	align-items: flex-start !important;
	flex-direction: row !important;
	gap: 6px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	height: auto !important;
	min-height: 0 !important;
}

.gl-listing .filters-menu button.label .icon,
.gl-listing .filters-menu button.label .tainacan-icon {
	display: none !important;
}

.gl-listing .filters-menu button.label::before {
	content: "" !important;
	display: block !important;
	width: 10px !important;
	height: 10px !important;
	flex: 0 0 10px !important;
	margin-top: 0.5px; /* alinha com cap-height do título 12px */
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 10px 10px !important;
	background-image: url("../images/icon-chevron-filter.svg") !important;
	transform-origin: center;
	transition: transform 0.15s ease;
}

.gl-listing .filters-menu button.label[aria-expanded="false"]::before {
	transform: rotate(-90deg);
}

.gl-listing .filters-menu .collapse-content {
	padding: 8px 0 0 !important;
	margin: 0 !important;
}

/* Inputs de busca / taginput — Figma: border #e2e8f0, radius 4, px 10 py 6 */
.gl-listing .filters-menu .input,
.gl-listing .filters-menu .input.is-small,
.gl-listing .filters-menu .taginput-container.input {
	border: 1px solid #e2e8f0 !important;
	border-radius: 4px !important;
	font-family: var(--font-family-base) !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	min-height: 29px !important;
	height: auto !important;
	padding: 6px 10px !important;
	box-shadow: none !important;
	background: var(--color-white, #fff) !important;
	color: var(--color-neutral-05, #565656) !important;
}

.gl-listing .filters-menu .control.has-icons-left .input,
.gl-listing .filters-menu .control.has-icons-left .input.is-small {
	padding-left: 30px !important; /* 10 + 12 ícone + 8 gap aproximado */
}

.gl-listing .filters-menu .input::placeholder,
.gl-listing .filters-menu .taginput .input::placeholder {
	color: var(--color-neutral-05, #565656) !important;
	opacity: 1;
	font-size: 12px !important;
}

.gl-listing .filters-menu .input:focus,
.gl-listing .filters-menu .taginput-container.input.is-focused,
.gl-listing .filters-menu .taginput-container.input:focus-within {
	border-color: var(--color-brand, #00968f) !important;
	box-shadow: none !important;
}

/* Ícone de busca Figma 12×12 (#00968F) no lugar do mdi-magnify */
.gl-listing .filters-menu .control.has-icons-left .icon.is-left {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 12px !important;
	height: 12px !important;
	min-width: 12px !important;
	min-height: 12px !important;
	left: 10px !important;
	top: 50% !important;
	transform: translateY(-50%);
	pointer-events: none;
	color: transparent !important;
	font-size: 0 !important;
}

.gl-listing .filters-menu .control.has-icons-left .icon.is-left .mdi,
.gl-listing .filters-menu .control.has-icons-left .icon.is-left i {
	display: none !important;
}

.gl-listing .filters-menu .control.has-icons-left .icon.is-left::before {
	content: "" !important;
	display: block !important;
	width: 12px !important;
	height: 12px !important;
	background: url("../images/icon-search-filter.svg") center / 12px 12px no-repeat !important;
}

/* Taginput (ex.: Origem): mesmo visual de campo de busca; ícone só no .has-icons-left interno */
.gl-listing .filters-menu .taginput.control {
	width: 100%;
}

.gl-listing .filters-menu .taginput-container.input {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 4px;
	padding: 4px 10px !important;
	min-height: 29px !important;
	background-image: none !important;
}

.gl-listing .filters-menu .taginput-container .control.has-icons-left {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}

.gl-listing .filters-menu .taginput-container .input,
.gl-listing .filters-menu .taginput-container .input.is-small {
	border: none !important;
	box-shadow: none !important;
	min-height: 0 !important;
	height: auto !important;
	padding-top: 2px !important;
	padding-bottom: 2px !important;
	padding-right: 0 !important;
	font-size: 12px !important;
	background: transparent !important;
}

/* Ranges (DATA / N. ITENS): dois campos lado a lado, gap 8 */
.gl-listing .filters-menu .filter-item-forms .field.is-grouped,
.gl-listing .filters-menu .filter-item-forms .is-flex,
.gl-listing .filters-menu .collapse-content .columns {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 8px !important;
	margin: 0 !important;
}

.gl-listing .filters-menu .filter-item-forms .field.is-grouped > .control,
.gl-listing .filters-menu .collapse-content .column {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

.gl-listing .filters-menu a,
.gl-listing .filters-menu .checkbox label,
.gl-listing .filters-menu .b-checkbox .control-label {
	color: var(--color-neutral-05, #565656) !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
}

/* Checkboxes — Figma: 14×14, border #cbd5e1, radius 2, gap 8, py 2 */
.gl-listing .filters-menu .b-checkbox.checkbox,
.gl-listing .filters-menu .b-checkbox.checkbox.is-small {
	display: flex !important;
	align-items: flex-start !important;
	gap: 8px !important;
	margin: 0 !important;
	padding: 2px 0 !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
}

.gl-listing .filters-menu .b-checkbox.checkbox input[type="checkbox"] + .check,
.gl-listing .filters-menu .b-checkbox .check {
	flex: 0 0 14px;
	border: 1px solid #cbd5e1 !important;
	border-radius: 2px !important;
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	min-height: 14px !important;
	margin-top: 3px;
	padding: 0 !important;
	background: var(--color-white, #fff) !important;
	box-shadow: none !important;
}

.gl-listing .filters-menu .b-checkbox.checkbox input[type="checkbox"]:checked + .check {
	background: var(--color-brand, #00968f) !important;
	border-color: var(--color-brand, #00968f) !important;
}

.gl-listing .filters-menu .b-checkbox .control-label {
	padding-left: 0 !important;
	padding-top: 0 !important;
	flex: 1 1 auto;
	min-width: 0;
}

.gl-listing .filters-menu .checkbox-label-text {
	color: var(--color-neutral-05, #565656) !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
	white-space: normal !important;
}

.gl-listing .filters-menu .facet-item-count,
.gl-listing .filters-menu .filters-amount-label,
.gl-listing .filters-menu .filter-item-amount {
	color: var(--color-brand, #00968f) !important;
	font-weight: 400 !important;
	font-size: 14px !important;
}

.gl-listing .filters-menu .view-all-button,
.gl-listing .filters-menu .view-all-button.link-style {
	display: inline-block !important;
	color: var(--color-text-link, #005f6b) !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	text-decoration: none !important;
	padding: 4px 0 0 !important;
	margin: 0 !important;
	height: auto !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.gl-listing .filters-menu .view-all-button:hover {
	text-decoration: underline !important;
	text-decoration-color: currentColor !important;
}

/* ---- Result cards (container branco) ---- */
.gl-list-results {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 39px;
}

/* Esconde skeleton residual do Tainacan (se ainda injetado) */
.gl-listing .gl-list-results--skeleton,
.gl-listing .skeleton .gl-list-results,
.gl-listing [aria-busy="true"] .gl-list-results--skeleton {
	display: none !important;
}

.gl-list-results__item {
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent;
	list-style: none;
	display: block;
}

.gl-list-card {
	display: flex;
	flex-direction: column;
	gap: 32px;
	padding: 24px;
	background: var(--color-white);
	border: 1px solid var(--color-neutral-02);
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	box-sizing: border-box;
	text-decoration: none !important;
	color: inherit;
	cursor: pointer;
}

.gl-list-card:hover,
.gl-list-card:focus,
.gl-list-card:focus-visible,
.gl-list-card:visited {
	text-decoration: none !important;
	color: inherit;
}

.gl-list-card__title {
	margin: 0 !important;
	font-family: var(--font-family-base) !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	color: var(--color-black, #46272d) !important;
}

.gl-list-card__row {
	display: flex;
	gap: 32px;
	align-items: flex-start;
}

.gl-list-card__thumb {
	flex: 0 0 100px;
	flex-shrink: 0;
	width: 100px;
	min-width: 100px;
	height: 106px;
	overflow: hidden;
	border-radius: 4px;
	display: block;
	border: none;
	box-shadow: none;
	box-sizing: border-box;
}

.gl-list-card__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.gl-list-card__content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.gl-list-card__excerpt {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	color: var(--color-text-muted, #4b5563);
	white-space: normal;
	overflow: visible;
	text-overflow: unset;
	display: block;
	-webkit-line-clamp: unset;
	line-clamp: unset;
}

.gl-list-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 32px;
	margin: 0;
}

.gl-list-card__meta-field {
	flex: 1 1 180px;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.gl-list-card__meta-label {
	display: block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 1px;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--color-black, #46272d);
	margin: 0;
}

.gl-list-card__meta-value {
	font-size: 14px;
	line-height: 1.45;
	color: var(--color-text-link, #005f6b);
	font-weight: 400;
}

.gl-list-card__tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.gl-list-card__tags-label {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 1px;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--color-black, #46272d);
}

.gl-list-card__tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 8px;
	border-radius: 112px;
	background: var(--color-neutral-01, #f6f5f2);
	font-size: 12px;
	line-height: 1.45;
	color: var(--color-text-link, #005f6b);
}

.gl-list-results--empty {
	padding: 40px 24px;
	text-align: center;
	color: var(--color-text-muted);
	background: var(--color-white);
	border: 1px solid var(--color-neutral-02);
	border-radius: 6px;
}

/* ---- Pagination — Figma 2305:7216 (full-bleed no main, colada ao footer) ---- */
body .gl-listing > .pagination-area.gl-listing__pagination,
body .gl-listing > .pagination-area {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	width: 100% !important;
	max-width: none !important;
	margin-top: auto !important;
	margin-bottom: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding: 16px 32px !important;
	min-height: 64px;
	height: auto;
	box-sizing: border-box;
	border-top: 1px solid var(--color-neutral-02, #dedcd7) !important;
	border-bottom: 1px solid var(--color-neutral-02, #dedcd7) !important;
	border-left: none !important;
	border-right: none !important;
	background: var(--color-white) !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: var(--color-black, #46272d) !important;
	position: relative;
	left: auto !important;
	z-index: 2;
	flex-shrink: 0;
}

/* Enquanto o JS não move, evita o hack antigo de -359px */
body .gl-listing .pagination-area:not(.gl-listing__pagination) {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
}

/* Contagem — Figma 2305:7217 (não crescer; libera espaço p/ os outros grupos) */
body .gl-listing .pagination-area .shown-items {
	display: block !important; /* visível também em viewport estreito */
	color: var(--color-neutral-05, #565656) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
	flex-grow: 0 !important; /* anula style inline do Tainacan */
	width: auto !important;
	max-width: none !important;
	white-space: nowrap !important;
}

body .gl-listing .pagination-area .shown-items span {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
}

/* Destaca o total em “Exibindo itens X a Y de Z” quando vier em strong */
body .gl-listing .pagination-area .shown-items strong {
	font-weight: 700 !important;
	color: var(--color-brand, #00968f) !important;
}

/* Labels "Itens por página" / "Ir para página" — uma linha, horizontal */
body .gl-listing .pagination-area .label,
body .gl-listing .pagination-area .items-per-page,
body .gl-listing .pagination-area .go-to-page {
	color: var(--color-black, #46272d) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	line-height: 1.45 !important;
}

body .gl-listing .pagination-area .items-per-page,
body .gl-listing .pagination-area .go-to-page {
	display: inline-flex !important;
	flex: 0 0 auto !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 0 !important;
	height: 32px !important;
	min-height: 32px !important;
	max-height: 32px !important;
	white-space: nowrap !important;
}

/* Bulma field.is-horizontal: label + select na mesma linha, sem quebra */
body .gl-listing .pagination-area .field.is-horizontal {
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 0 !important;
	width: auto !important;
	height: 32px !important;
}

body .gl-listing .pagination-area .field-label {
	flex: 0 0 auto !important;
	flex-grow: 0 !important;
	flex-basis: auto !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	height: auto !important;
	text-align: left !important;
	white-space: nowrap !important;
}

body .gl-listing .pagination-area .field-label .label {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	white-space: nowrap !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: var(--color-black, #46272d) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

body .gl-listing .pagination-area .field-body {
	flex: 0 0 auto !important;
	flex-grow: 0 !important;
	width: auto !important;
	display: inline-flex !important;
	align-items: center !important;
}

body .gl-listing .pagination-area .items-per-page .field,
body .gl-listing .pagination-area .go-to-page .field,
body .gl-listing .pagination-area .items-per-page .control,
body .gl-listing .pagination-area .go-to-page .control,
body .gl-listing .pagination-area .items-per-page .select,
body .gl-listing .pagination-area .go-to-page .select {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	height: 32px !important;
	min-height: 32px !important;
	width: auto !important;
	flex: 0 0 auto !important;
}

body .gl-listing .pagination-area .select,
body .gl-listing .pagination-area .control {
	margin: 0 !important;
}

/*
 * Selects Bulma (.select > select + ::after seta)
 * Figma 2305:7220 — padding esq 8 / dir espaço p/ chevron 24; seta #46272D
 */
body .gl-listing .select {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	height: 32px !important;
	min-height: 32px !important;
	max-height: 32px !important;
}

body .gl-listing .select select,
body .gl-listing select:not([multiple]) {
	border: 1px solid var(--color-neutral-02, #dedcd7) !important;
	border-radius: 4px !important;
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: var(--color-black, #46272d) !important;
	background-color: var(--color-white) !important;
	background-image: none !important;
	box-shadow: none !important;
	min-height: 32px !important;
	height: 32px !important;
	/* espaço à direita para a seta (não sobrepor o valor) */
	padding: 4px 32px 4px 8px !important;
	min-width: 4.5rem !important;
	width: auto !important;
	max-width: none !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer;
}

body .gl-listing .select select:focus,
body .gl-listing select:not([multiple]):focus {
	border-color: var(--color-brand, #00968f) !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Chevron Bulma (::after) — cor preta do Figma, não a cor da borda */
body .gl-listing .select:not(.is-multiple):not(.is-loading)::after {
	border: none !important;
	border-color: transparent !important;
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%2346272D' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='bevel'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 12px 7px !important;
	width: 16px !important;
	height: 16px !important;
	right: 8px !important;
	top: 50% !important;
	margin-top: 0 !important;
	transform: translateY(-50%) !important;
	pointer-events: none !important;
	z-index: 1;
}

/* Números / setas — Figma 2305:7226 (sem margin-left auto: space-between espalha) */
body .gl-listing .pagination-area .pagination,
body .gl-listing .pagination-area nav.pagination {
	margin: 0 !important;
	display: flex !important;
	flex: 0 0 auto !important;
	align-items: center !important;
	gap: 4px;
	flex-wrap: nowrap !important;
	height: 32px !important;
	min-height: 32px !important;
}

/* Bulma aplica margin-bottom: 1rem na lista — desloca números vs setas */
body .gl-listing .pagination-area .pagination-list {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 4px;
	margin: 0 !important;
	padding: 0 !important;
	height: 32px !important;
	min-height: 32px !important;
	list-style: none !important;
}

body .gl-listing .pagination-area .pagination-list li {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 32px !important;
}

/* Input vazio do Tainacan (só comentário Vue) — não participa do alinhamento */
body .gl-listing .pagination-area .pagination-input:not(:has(*)) {
	display: none !important;
}

body .gl-listing .pagination-area .pagination-link,
body .gl-listing .pagination-area a.pagination-link {
	border: none !important;
	background: var(--color-white) !important;
	color: var(--color-black, #46272d) !important;
	min-width: 32px !important;
	width: auto !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 4px !important;
	border-radius: 4px !important; /* Figma: rounded 4px, não círculo */
	font-family: var(--font-family-base) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 32px !important;
	text-align: center !important;
	box-shadow: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	vertical-align: middle !important;
}

body .gl-listing .pagination-area .pagination-link:hover:not(.is-current):not([disabled]),
body .gl-listing .pagination-area a.pagination-link:hover:not(.is-current):not([disabled]) {
	background: var(--color-neutral-01, #f6f5f2) !important;
	color: var(--color-brand, #00968f) !important;
}

body .gl-listing .pagination-area .pagination-link.is-current,
body .gl-listing .pagination-area a.pagination-link.is-current {
	background: var(--color-brand, #00968f) !important;
	color: #fff !important;
	font-weight: 700 !important;
	min-width: 32px !important;
	width: 32px !important;
}

body .gl-listing .pagination-area .pagination-previous,
body .gl-listing .pagination-area .pagination-next,
body .gl-listing .pagination-area a.pagination-link.pagination-previous,
body .gl-listing .pagination-area a.pagination-link.pagination-next {
	border: none !important;
	background: var(--color-white) !important;
	border-radius: 4px !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 32px !important;
	margin: 0 !important;
	color: var(--color-black, #46272d) !important;
	box-shadow: none !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: center !important;
	position: relative !important;
	top: auto !important;
	font-size: 0 !important; /* esconde texto residual */
	line-height: 0 !important;
	vertical-align: middle !important;
}

/* MDI não carrega no front — esconde e desenha chevron via CSS (Figma) */
body .gl-listing .pagination-area .pagination-previous .icon,
body .gl-listing .pagination-area .pagination-next .icon,
body .gl-listing .pagination-area .pagination-previous .mdi,
body .gl-listing .pagination-area .pagination-next .mdi {
	display: none !important;
}

body .gl-listing .pagination-area .pagination-previous::before,
body .gl-listing .pagination-area .pagination-next::before {
	content: "" !important;
	display: block !important;
	width: 24px !important;
	height: 24px !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 14px 14px !important;
	flex-shrink: 0;
}

body .gl-listing .pagination-area .pagination-previous::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M9 2L4 7L9 12' stroke='%2346272D' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='bevel'/%3E%3C/svg%3E") !important;
}

body .gl-listing .pagination-area .pagination-next::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M5 2L10 7L5 12' stroke='%2346272D' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='bevel'/%3E%3C/svg%3E") !important;
}

body .gl-listing .pagination-area .pagination-previous[disabled],
body .gl-listing .pagination-area .pagination-next[disabled],
body .gl-listing .pagination-area .pagination-previous[aria-disabled="true"],
body .gl-listing .pagination-area .pagination-next[aria-disabled="true"] {
	opacity: 0.35;
	color: var(--color-neutral-05, #565656) !important;
	pointer-events: none;
}

body .gl-listing .pagination-area .pagination-previous:hover:not([disabled])::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M9 2L4 7L9 12' stroke='%2300968F' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='bevel'/%3E%3C/svg%3E") !important;
}

body .gl-listing .pagination-area .pagination-next:hover:not([disabled])::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M5 2L10 7L5 12' stroke='%2300968F' stroke-width='1.5' stroke-linecap='square' stroke-linejoin='bevel'/%3E%3C/svg%3E") !important;
}

body .gl-listing .pagination-area .pagination-ellipsis {
	color: var(--color-black, #46272d) !important;
	min-width: 32px;
	height: 32px;
	line-height: 32px;
	text-align: center;
	font-weight: 700;
}

@media (max-width: 900px) {
	.gl-listing .theme-items-list {
		grid-template-columns: minmax(0, 1fr) !important;
		row-gap: 24px !important;
	}

	.gl-listing .filters-menu.modal,
	.gl-listing .filters-menu,
	.gl-listing .filters-menu.is-full-screen,
	.gl-listing .filters-menu.is-active {
		grid-column: 1 !important;
		grid-row: auto !important;
		width: 100% !important;
		max-width: none !important;
		padding: 24px 0 !important;
		border-right: none !important;
	}

	.gl-listing .gl-listing__results-col,
	.gl-listing .theme-items-list > .search-control,
	.gl-listing .theme-items-list > .items-list-area,
	.gl-listing .theme-items-list > #items-list-area {
		grid-column: 1 !important;
		grid-row: auto !important;
	}

	.gl-listing .gl-listing__results-col {
		gap: 16px !important;
	}

	.gl-listing .search-control,
	.gl-listing .items-list-area {
		grid-column: auto !important;
		grid-row: auto !important;
		max-width: none !important;
	}

	.gl-listing .search-control {
		padding-top: 16px !important;
	}

	body .gl-listing .pagination-area {
		padding: 16px !important;
		flex-wrap: wrap;
	}
}

@media (max-width: 768px) {
	.gl-list-card__row {
		flex-direction: column;
	}

	.gl-list-card__thumb {
		flex: 0 0 auto;
		width: 100%;
		min-width: 0;
		height: 180px;
	}

	.gl-list-card__title {
		font-size: 20px;
	}

	.gl-active-filters,
	.gl-ai-overview,
	.gl-listing__faceted {
		padding-left: var(--spacing-md);
		padding-right: var(--spacing-md);
	}

	body .gl-listing .pagination-area .pagination {
		margin-left: 0 !important;
		width: 100%;
		justify-content: center;
	}
}

/* -------------------------------------------------------------------------
 * Busca avançada nativa do Tainacan (#advanced-search-container)
 * Acionada pelo link “Busca avançada” do shell (gl-shell.js).
 * ------------------------------------------------------------------------- */
.gl-listing #advanced-search-container,
.gl-listing .tnc-advanced-search-container {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
	margin: 0 0 24px !important;
	padding: 24px 32px !important;
	background: var(--color-white, #fff) !important;
	border: 1px solid var(--color-neutral-02, #dedcd7) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--color-black, #46272d);
	font-family: var(--font-family-base);
}

.gl-listing #advanced-search-form,
.gl-listing .tnc-advanced-search-container {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.gl-listing #advanced-search-container .label,
.gl-listing #advanced-search-container .field .label,
.gl-listing .tnc-advanced-search-container .label {
	font-family: var(--font-family-base);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--color-black, #46272d);
}

.gl-listing #advanced-search-container .input,
.gl-listing #advanced-search-container .select select,
.gl-listing #advanced-search-container select,
.gl-listing #advanced-search-container input[type="text"],
.gl-listing #advanced-search-container input:not([type="checkbox"]):not([type="radio"]),
.gl-listing .tnc-advanced-search-container .input,
.gl-listing .tnc-advanced-search-container select {
	font-family: var(--font-family-base);
	font-size: 14px;
	color: var(--color-black, #46272d);
	background: var(--color-white, #fff) !important;
	border: 1px solid var(--color-neutral-02, #dedcd7) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	min-height: 40px;
}

.gl-listing #advanced-search-container .input:focus,
.gl-listing #advanced-search-container select:focus,
.gl-listing #advanced-search-container input:focus {
	outline: 2px solid var(--color-brand, #005f6b);
	outline-offset: -1px;
	border-color: var(--color-brand, #005f6b) !important;
}

.gl-listing #advanced-search-container .button,
.gl-listing #advanced-search-container .button.is-primary,
.gl-listing .advanced-search-form-submit .button {
	font-family: var(--font-family-base);
	font-size: 14px;
	font-weight: 600;
	border-radius: 0 !important;
	box-shadow: none !important;
	min-height: 40px;
	padding: 0 16px;
}

.gl-listing #advanced-search-container .button.is-primary,
.gl-listing .advanced-search-form-submit .button.is-primary {
	background: var(--color-brand, #005f6b) !important;
	border-color: var(--color-brand, #005f6b) !important;
	color: var(--color-white, #fff) !important;
}

.gl-listing #advanced-search-container .button.is-outlined,
.gl-listing #advanced-search-container .button:not(.is-primary) {
	background: transparent !important;
	border-color: var(--color-neutral-02, #dedcd7) !important;
	color: var(--color-black, #46272d) !important;
}

.gl-listing .advanced-search-form-submit {
	display: flex !important;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	padding: 8px 0 0 !important;
	margin: 0 !important;
	border-top: 1px solid var(--color-neutral-02, #dedcd7);
}

.gl-listing .theme-items-list:has(#advanced-search-container) {
	grid-template-columns: minmax(0, 1fr) !important;
}

.gl-listing .theme-items-list:has(#advanced-search-container) .filters-menu {
	display: none !important;
}

.gl-listing .theme-items-list:has(#advanced-search-container) .gl-listing__results-col,
.gl-listing .theme-items-list:has(#advanced-search-container) > .search-control,
.gl-listing .theme-items-list:has(#advanced-search-container) > .items-list-area,
.gl-listing .theme-items-list:has(#advanced-search-container) > #items-list-area {
	grid-column: 1 !important;
}

@media screen and (max-width: 1023px) {
	.gl-listing #advanced-search-container,
	.gl-listing .tnc-advanced-search-container {
		padding: 20px 16px !important;
	}
}
