/* ESB Loja: simulador de frete */
.esb-frete { margin: .9rem 0; color: var(--esb-text); }
.esb-frete [hidden] { display: none !important; }

.esb-frete__titulo { display: flex; align-items: center; gap: .4rem; margin-bottom: .45rem; }
.esb-frete__icone { color: var(--esb-dark); flex: 0 0 auto; }

.esb-frete__linha { display: flex; gap: .5rem; }
.esb-frete__cep { flex: 1 1 auto; min-width: 0; letter-spacing: .03em; }
.esb-frete__btn { flex: 0 0 auto; min-width: 108px; }

.esb-frete__nao-sei {
	display: inline-block;
	margin-top: .35rem;
	font-size: .8rem;
	color: var(--esb-muted);
	text-decoration: underline;
}
.esb-frete__nao-sei:hover { color: var(--esb-dark); }

.esb-frete__resultado:empty { display: none; }
.esb-frete__resultado { margin-top: .7rem; }

.esb-frete__card {
	border: 1px solid var(--esb-border);
	border-left: 4px solid var(--esb-primary);
	border-radius: var(--esb-radius);
	background: var(--esb-bg-soft);
	padding: .75rem .9rem;
}
.esb-frete__local { font-size: .85rem; color: var(--esb-muted); margin-bottom: .25rem; }
.esb-frete__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: .75rem;
	font-size: .95rem;
	color: var(--esb-dark);
}
.esb-frete__total strong { font-size: 1.25rem; white-space: nowrap; }

.esb-frete__detalhes {
	list-style: none;
	margin: .55rem 0 0;
	padding: .5rem 0 0;
	border-top: 1px dashed var(--esb-border);
	font-size: .82rem;
}
.esb-frete__detalhes li {
	display: flex;
	justify-content: space-between;
	gap: .75rem;
	padding: .15rem 0;
	margin: 0;
}
.esb-frete__detalhes li span:last-child { white-space: nowrap; font-variant-numeric: tabular-nums; }
.esb-frete__qty { font-weight: 600; color: var(--esb-dark); }

.esb-frete__prazo { margin: .5rem 0 0; font-size: .85rem; font-weight: 600; color: var(--esb-dark); }
.esb-frete__nota { margin: .45rem 0 0; font-size: .75rem; color: var(--esb-muted); }
.esb-frete__aviso { margin: 0; font-size: .85rem; color: var(--esb-muted); }

.esb-frete__erro p { margin: 0 0 .5rem; color: var(--esb-danger); font-size: .88rem; }
.esb-frete__whats { font-size: .9rem; }

@media (max-width: 380px) {
	.esb-frete__linha { flex-direction: column; }
	.esb-frete__btn { width: 100%; }
}
