/* 3DFila Addons — Simulador de frete no produto.
   O bloco nasce com o tamanho final do formulário (vem no HTML do servidor e
   o CSS vai no <head>): nada empurra a página depois de carregar. */

.tdfa-sim {
	clear: both;
	margin: 18px 0;
	padding: 14px 16px;
	border: 1px solid #e3e7e7;
	border-radius: 10px;
	background: #fafbfb;
	color: #3b3f3f;
	font-size: 14px;
	line-height: 1.45;
}

.tdfa-sim__form {
	margin: 0;
}

.tdfa-sim__title {
	display: block;
	margin: 0 0 8px;
	font-size: 14px;
	font-weight: 700;
}

.tdfa-sim__row {
	display: flex;
	gap: 8px;
}

.tdfa-sim .tdfa-sim__input {
	flex: 1 1 auto;
	box-sizing: border-box;
	width: auto;
	min-width: 0;
	height: 42px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #cfd6d6;
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
	font-size: 16px;
	letter-spacing: .5px;
}

.tdfa-sim .tdfa-sim__input:focus {
	border-color: var(--tdfa-sim-color, #03a89e);
	outline: none;
	box-shadow: 0 0 0 2px rgba(3, 168, 158, .15);
}

.tdfa-sim .tdfa-sim__button {
	flex: 0 0 auto;
	box-sizing: border-box;
	min-width: 104px;
	height: 42px;
	margin: 0;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	background: var(--tdfa-sim-color, #03a89e);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 42px;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}

.tdfa-sim .tdfa-sim__button:hover {
	filter: brightness(1.07);
}

.tdfa-sim .tdfa-sim__button[disabled] {
	opacity: .75;
	cursor: wait;
}

.tdfa-sim__cep-link {
	display: inline-block;
	margin-top: 6px;
	font-size: 12.5px;
}

.tdfa-sim__result:empty {
	display: none;
}

.tdfa-sim__result {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid #e3e7e7;
}

.tdfa-sim__head {
	margin-bottom: 8px;
}

.tdfa-sim__what {
	display: block;
	color: #6f7676;
	font-size: 12.5px;
}

.tdfa-sim__rates {
	margin: 0;
	padding: 0;
	list-style: none;
}

.tdfa-sim__rates li {
	margin: 0;
	padding: 7px 0;
	border-bottom: 1px dashed #e3e7e7;
}

.tdfa-sim__rates li:last-child {
	border-bottom: 0;
}

.tdfa-sim__rates li.is-free {
	color: #1a7f37;
	font-weight: 600;
}

.tdfa-sim__free {
	display: inline-block;
	margin-left: 4px;
	padding: 0 7px;
	border-radius: 999px;
	background: #e6f4ea;
	color: #1a7f37;
	font-size: 12px;
	font-weight: 700;
}

.tdfa-sim__extra {
	color: #6f7676;
	font-size: 12.5px;
	font-weight: 400;
}

.tdfa-sim__note,
.tdfa-sim__empty,
.tdfa-sim__msg {
	margin: 8px 0 0;
	color: #6f7676;
	font-size: 12.5px;
}

.tdfa-sim__note.is-warning {
	color: #8a6d3b;
}

.tdfa-sim__result.is-error .tdfa-sim__msg {
	color: #b3261e;
}

.tdfa-sim.is-loading .tdfa-sim__result {
	opacity: .5;
}
