.rock-toolbar {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.75rem;
		margin-block: 1.5rem;
}

.rock-toolbar select {
		max-width: 100%;
		padding: 0.65rem 0.85rem;
		border: 1px solid currentColor;
		border-radius: 0.5rem;
		background: transparent;
		color: inherit;
		font: inherit;
}

.rock-toolbar option {
		background: Canvas;
		color: CanvasText;
}

.rock-gallery {
		grid-template-columns:
				repeat(auto-fit, minmax(min(100%, 19rem), 1fr));
}

.rock-card {
		display: flex;
		flex-direction: column;
		min-width: 0;
		gap: 1rem;
}

.rock-card figure {
		margin: 0;
}

.rock-photo-link {
		display: block;
		border-radius: 0.75rem;
		overflow: hidden;
}

.rock-photo {
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 1434 / 1080;
		object-fit: contain;
		background: #eeeeec;
}

.rock-caption {
		margin-block-start: 0.75rem;
		font-size: 0.9rem;
}

.rock-card h3 {
		margin: 0;
}

.rock-description {
		margin: 0;
}

.rock-meta {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		gap: 0.35rem 0.75rem;
		margin: 0;
		font-size: 0.9rem;
}

.rock-meta dt {
		font-weight: 600;
}

.rock-meta dd {
		margin: 0;
		overflow-wrap: anywhere;
}

.rock-details {
		margin-block-start: auto;
		font-size: 0.9rem;
}

.rock-details summary {
		cursor: pointer;
}

.rock-details p {
		margin-block-end: 0;
}

.rock-gallery [hidden] {
		display: none !important;
}

@media (max-width: 425px) {
		.rock-gallery {
				grid-template-columns: minmax(0, 1fr);
		}
}