/* Preliminary Bookings Dialogue Styling */
#preliminary_bookings_dialogue {
	min-width: 60em;
}

#preliminary_bookings_dialogue h3 {
	margin-bottom: 1em;
}

#prelBookingsList {
	width: 100%;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}

#prelBookingsList tbody tr {
	border-bottom: 1px solid #e0e0e0;
	transition: background-color 0.2s ease;
}

#prelBookingsList tbody tr:hover {
	background-color: #f9f9f9;
}

#prelBookingsList tbody td {
	padding: 0.75em 1em;
	vertical-align: middle;
}

#prelBookingsList td.left {
	text-align: left;
}

#prelBookingsList td.center {
	text-align: center;
}

/* Remove padding that creates gaps between columns */
#prelBookingsList td {
	padding-left: 12px !important;
	padding-right: 12px !important;
}

/* Preliminary Bookings Table Actions */
.table-actions {
	display: flex;
	gap: 0.5em;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.table-actions .btn-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5em;
	height: 2.5em;
	border-radius: 0.25em;
	cursor: pointer;
	transition: all 0.2s ease;
	border: 1px solid #ddd;
	background-color: #f5f5f5;
	padding: 0;
}

.table-actions .btn-icon:hover {
	background-color: #e8e8e8;
	border-color: #999;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.table-actions .btn-icon img {
	width: 1.5em;
	height: 1.5em;
	pointer-events: none;
}

.table-actions .btn-approve:hover {
	background-color: #e8f5e9;
	border-color: #5BA538;
}

.table-actions .btn-reserve:hover {
	background-color: #e3f2fd;
	border-color: #2196F3;
}

.table-actions .btn-deny:hover {
	background-color: #ffebee;
	border-color: #f44336;
}

/* Responsive adjustments for tablets */
@media (max-width: 1024px) {
	#preliminary_bookings_dialogue {
		min-width: 50em;
	}
	
	#prelBookingsList thead th,
	#prelBookingsList tbody td {
		padding: 0.6em 0.8em;
		font-size: 0.95em;
	}
	
	.table-actions .btn-icon {
		width: 2.2em;
		height: 2.2em;
	}
	
	.table-actions .btn-icon img {
		width: 1.3em;
		height: 1.3em;
	}
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
	#preliminary_bookings_dialogue {
		min-width: auto;
		width: 95vw;
	}
	
	#prelBookingsList {
		font-size: 0.9em;
	}
	
	#prelBookingsList thead th,
	#prelBookingsList tbody td {
		padding: 0.5em;
	}
	
	.table-actions {
		flex-direction: row;
		gap: 0.25em;
	}
	
	.table-actions .btn-icon {
		width: 2em;
		height: 2em;
	}
	
	.table-actions .btn-icon img {
		width: 1.2em;
		height: 1.2em;
	}
}
