/**
 * Frontend styles for Recently Played block
 */

.wp-block-scrobble-blocks-recently-played {
	// List layout
	&.is-layout-list {
		list-style: none;
		padding: 0;
		margin: 0;

		ul {
			list-style: none;
			padding: 0;
			margin: 0;
		}

		.scrobble-item {
			display: flex;
			align-items: flex-start;
			gap: var(--scrobble-gap, 1rem);
			padding: 0.5rem 0;

			&:not(:last-child) {
				border-bottom: 1px solid rgba(0, 0, 0, 0.1);
			}
		}

		.scrobble-artwork {
			flex-shrink: 0;
			width: var(--scrobble-artwork-size, 64px);
			height: var(--scrobble-artwork-size, 64px);
		}
	}

	// Grid layout
	&.is-layout-grid {
		display: grid;
		grid-template-columns: repeat(var(--grid-columns, 3), 1fr);
		gap: var(--scrobble-gap, 1rem);

		.scrobble-item {
			display: flex;
			flex-direction: column;
			gap: 0.5rem;
		}

		.scrobble-artwork {
			width: var(--scrobble-artwork-size-grid, 100%);
			aspect-ratio: 1;
		}

		.scrobble-info {
			text-align: center;
		}
	}

	// Shared styles
	.scrobble-artwork img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
		border-radius: 4px;
	}

	.scrobble-info {
		display: flex;
		flex-direction: column;
		gap: 0.125em;
		min-width: 0;
	}

	.scrobble-track {
		font-size: var(--scrobble-font-size-track, inherit);
		font-weight: 600;
		color: var(--scrobble-color-text, inherit);
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;

		a {
			color: var(--scrobble-color-link, inherit);
			text-decoration: none;

			&:hover {
				text-decoration: underline;
			}
		}
	}

	.scrobble-artist {
		font-size: var(--scrobble-font-size-artist, 0.875em);
		color: var(--scrobble-color-text-secondary, inherit);
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.scrobble-timestamp {
		font-size: var(--scrobble-font-size-timestamp, 0.75em);
		color: var(--scrobble-color-text-secondary, inherit);
		opacity: 0.7;
	}
}

// Responsive adjustments
@media (max-width: 782px) {
	.wp-block-scrobble-blocks-recently-played.is-layout-grid {
		grid-template-columns: repeat(min(var(--grid-columns, 3), 2), 1fr);
	}
}

@media (max-width: 480px) {
	.wp-block-scrobble-blocks-recently-played.is-layout-grid {
		grid-template-columns: repeat(min(var(--grid-columns, 3), 1), 1fr);
	}
}
