#favoritos .panel-default {
	border: none;
}

#categoriasHeader {
	top: 142px;
}

/* Container geral */
.favoritos-container {
	margin-top: 20px;
}

/* Lista (substitui a tabela) */
.favoritos-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Cabeçalho estilo tabela, mas em DIV */
.favoritos-header {
	display: grid;
	grid-template-columns: 180px 1fr 160px 220px;
	gap: 2rem;
	border-bottom: 5px solid #CBEFFF;
	align-items: center;
	padding: 10px 14px;
	color: #ff197e;
	font-weight: 600;
}

.favoritos-header div {
	font-size: 25px;
	color: #FF197E;
	text-transform: uppercase;
	font-weight: 500;
}

/* Cada linha de favorito (substitui <tr>) */
.favorito-row {
	display: grid;
	grid-template-columns: 180px 1fr 160px 220px;
	border-bottom: 5px solid #CBEFFF;
	gap: 32px;
	align-items: center;
	padding: 12px 14px;
	background: #fff;
}

/* Colunas */
.favorito-col-img a {
	display: flex;
	justify-content: center;
	align-items: center;
}
.favorito-thumb {
	width: 120px;
	max-width: 100%;
	height: auto;
}
.favorito-col-nome a.favorito-nome {
	text-decoration: none;
	color: #333;
	font-size: 18px;
	font-weight: 600;
}
.favorito-col-nome a.favorito-nome:hover {
	text-decoration: underline;
}

.favorito-col-preco .preco-original {
	text-decoration: line-through;
	color: #999;
	font-size: 13px;
	line-height: 1;
}
.favorito-col-preco .preco-final {
	font-size: 18px;
	font-weight: bold;
	color: #0c0c0c;
	line-height: 1.2;
}

.favorito-col-acoes {
	display: flex;
	justify-content: center;
	gap: 1rem;
}

/* Botões (mantidos) */
.favorito-actions {
	margin-top: 15px;
}

.btn-remover-favorito {
	color: #f7bbf7;
	border: none;
	background-color: transparent;
	cursor: pointer;
	transition: .3s ease-in-out all;
	font-size: 3rem;
}
.btn-remover-favorito:hover {
	color: #FF197E;
	scale: 1.1;
}

.alter-favoritos::before {
	content: none !important;
}

.btn-adicionar-carrinho {
	background: #CBEFFF;
	color: #FF197E;
	font-weight: 700;
	border: none;
	padding: 8px 1.4rem;
	border-radius: 20px;
	cursor: pointer;
	transition: .3s ease-in-out all;
}
.btn-adicionar-carrinho:hover {
	background-color: #FF197E;
	color: #CBEFFF;
}

/* Estados vazios */
.favoritos-empty {
	text-align: center;
	padding: 50px 20px;
	color: #666;
}
.favoritos-empty i {
	font-size: 48px;
	margin-bottom: 20px;
	color: #ddd;
}

/* Estilos para produtos visualizados */
.produto-visualizado {
	opacity: 0.7;
	background-color: #f8f9fa;
	transition: all 0.3s ease;
}

.produto-visualizado .favorito-nome {
	color: #6c757d !important;
	text-decoration: line-through;
}

/* Estilos para botões de remoção */
.btn-remover-favorito {
	transition: all 0.3s ease;
	position: relative;
}

.btn-remover-favorito:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.btn-remover-favorito:hover:not(:disabled) {
	transform: scale(1.1);
	animation: pulse 1s infinite;
}

@keyframes pulse {
	0% { transform: scale(1.1); }
	50% { transform: scale(1.2); }
	100% { transform: scale(1.1); }
}

/* Estilos para links dos produtos */
.favorito-nome {
	transition: all 0.3s ease;
	cursor: pointer;
}

.favorito-nome:hover {
	color: #FF197E !important;
	text-decoration: underline;
}

/* Animação de fade out para itens removidos */
.favorito-row.removing {
	opacity: 0;
	transform: translateX(-100%);
	transition: all 0.4s ease;
}

/* Estilos para mensagens de alerta */
.alert-message {
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	animation: slideInRight 0.3s ease;
}

@keyframes slideInRight {
	from {
		transform: translateX(100%);
		opacity: 0;
	}
	to {
		transform: translateX(0);
		opacity: 1;
	}
}

/* Melhorias visuais para a lista de favoritos */
.favorito-row {
	transition: all 0.3s ease;
	border-radius: 8px;
	margin-bottom: 10px;
	padding: 15px;
	background: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.favorito-row:hover {
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
	transform: translateY(-2px);
}

/* Indicador visual para duplo clique */
.favorito-nome::after {
	content: " (duplo clique para remover)";
	font-size: 0.8em;
	color: #6c757d;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.favorito-nome:hover::after {
	opacity: 1;
}

/* Card antigo (mantido caso use em outro lugar) */
.favorito-item {
	padding: 15px;
	margin-bottom: 15px;
	background: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.favorito-item img {
	max-width: 100%;
	height: auto;
}
.favorito-info h4 {
	margin: 10px 0 5px 0;
	color: #333;
}
.favorito-info .classificacao {
	margin: 5px 0;
}
.favorito-info .preco {
	font-size: 18px;
	font-weight: bold;
	color: #e74c3c;
	margin: 10px 0;
}

/* Seção */
#favoritos {
	padding: 100px 0 100px 0;
}
#favoritos #favoritos-header h3 {
	padding-bottom: 100px;
}

/* Responsivo */
@media (max-width: 992px) {
	.favoritos-header,
	.favorito-row {
		grid-template-columns: 140px 1fr 140px 1fr;
	}
}
@media (max-width: 768px) {
	/* Usamos áreas para reorganizar no mobile */
	.favoritos-header {
		display: none; /* Esconde cabeçalho "tabular" no mobile */
	}
	.favorito-row {
		grid-template-columns: 100px 1fr;
		grid-template-areas:
			"img nome"
			"img preco"
			"img acoes";
	}
	.favorito-col-img {
		grid-area: img;
	}
	.favorito-col-nome {
		grid-area: nome;
	}
	.favorito-col-preco {
		grid-area: preco;
	}
	.favorito-col-acoes {
		grid-area: acoes;
		justify-content: flex-start;
	}
	.favorito-thumb {
		width: 90px;
	}
}
