/* NICHO Trabalho · todos os kits (usa as variáveis --nx-* e as peças base do style.css do kit. */

.nx-fu-body {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

/* Barra: cidade | data | horário | Agora | Converter */
.nx-fu-form {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr auto auto;
	align-items: end;
	gap: 16px;
	padding: 28px 32px;
	border: 0;
	box-shadow: var(--float);
	border-radius: 20px;
	background: var(--nx-bg);
}

.nx-fu-form input.nx-tool-select {
	cursor: pointer;
}

.nx-fu-now {
	height: 56px;
	padding: 0 28px;
	border: 0;
	box-shadow: var(--float);
	border-radius: 999px;
	background: #fff;
	color: var(--nx-ink);
	font: 700 16px var(--nx-font);
	cursor: pointer;
}

.nx-fu-now:hover {
	background: var(--nx-ink);
	color: #fff;
}

.nx-fu-submit {
	font-size: 17px;
	font-weight: 800;
}

/* aviso do anúncio: linha inteira embaixo, alinhado com o botão */
.nx-fu-form .nx-premio-aviso {
	grid-column: 1 / -1;
	margin-top: -6px;
	text-align: right;
}

.nx-fu-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.nx-fu-grid[hidden] {
	display: none;
}

.nx-fu-city {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 24px;
	border: 0;
	box-shadow: var(--float);
	border-radius: 18px;
	background: #fff;
}

.nx-fu-city.is-base {
	border-color: var(--nx-accent);
	background: var(--nx-tint-10);
}

.nx-fu-city__name {
	font-size: 16px;
	font-weight: 700;
}

.nx-fu-city__time {
	font-size: 44px;
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.05;
	font-variant-numeric: tabular-nums;
}

.nx-fu-city__day {
	font-size: 14px;
	color: var(--nx-muted);
}

.nx-fu-city__diff {
	font-size: 14px;
	font-weight: 700;
	color: var(--nx-accent-ink);
}

@media (max-width: 1180px) {
	/* cidade em cima; data | horário | Agora | Converter embaixo */
	.nx-fu-form {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto auto;
	}

	.nx-fu-form .nx-tool-field:first-child {
		grid-column: 1 / -1;
	}

	.nx-fu-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 860px) {
	/* cidade | data e horário | Agora e Converter */
	.nx-fu-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 22px;
	}

	.nx-fu-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nx-fu-city {
		padding: 18px;
	}

	.nx-fu-city__time {
		font-size: 34px;
	}
}

@media (max-width: 560px) {
	.nx-fu-form {
		grid-template-columns: minmax(0, 1fr);
	}

	.nx-fu-grid {
		gap: 10px;
	}

	.nx-fu-city {
		padding: 16px;
	}

	.nx-fu-city__time {
		font-size: 30px;
	}
}
