/**
 * Elementor JSON Table Widget Styles
 *
 * @package Elementor_JSON_Table_Widget
 * @since 1.0.0
 */

/* Table wrapper for responsive scrolling */
.ejt-table-wrapper {
	width: 100%;
	overflow-x: auto;
	margin: 1em 0;
}

/* Base table styles */
.ejt-table {
	width: 100%;
	border-collapse: collapse;
	background-color: #fff;
}

/* Table header styles */
.ejt-table thead {
	background-color: #f5f5f5;
}

.ejt-table th {
	padding: 12px;
	text-align: left;
	font-weight: 600;
	border-bottom: 2px solid #ddd;
}

/* Table body styles */
.ejt-table td {
	padding: 10px 12px;
	border-bottom: 1px solid #eee;
}

.ejt-table tbody tr:hover {
	background-color: #f9f9f9;
}

/* Message styles (error, empty state, loading) */
.ejt-message {
	padding: 15px;
	margin: 1em 0;
	border-radius: 4px;
	font-size: 14px;
}

.ejt-message-error {
	background-color: #fee;
	border-left: 4px solid #c33;
	color: #c33;
}

.ejt-message-empty {
	background-color: #f0f0f0;
	border-left: 4px solid #999;
	color: #666;
}

.ejt-message-loading {
	background-color: #e7f3ff;
	border-left: 4px solid #2196f3;
	color: #1976d2;
}

/* Responsive styles for mobile devices */
@media screen and (max-width: 768px) {
	.ejt-table {
		font-size: 14px;
	}
	
	.ejt-table th,
	.ejt-table td {
		padding: 8px;
	}
}

@media screen and (max-width: 480px) {
	.ejt-table {
		font-size: 12px;
	}
	
	.ejt-table th,
	.ejt-table td {
		padding: 6px;
	}
}
