.success {
	color: var(--pico-color-green);
	border-color: var(--pico-color-green);
}
.error {
	color: var(--pico-color-red);
	border-color: var(--pico-color-red);
}
a[aria-disabled="true"] {
	pointer-events: none; /* Disables mouse clicks */
	opacity: 0.5;         /* Visual cue */
	filter: grayscale(1); /* Optional: extra visual cue for 'disabled' */
	cursor: not-allowed;  /* Shows the 'block' icon on hover */
}

/* Red delete button */
.outline.red {
	color: red;
	border-color: red;
	float: right;
}
.outline.red:hover {
	background-color: red;
	color: white;
}

/* Custom styles to enhance UI on mobile devices */
header.container hr { display: none; }
@media (max-width: 768px) {
	body {
		padding-bottom: 100px;
	}
	header.container {
		position: fixed;
		bottom: 0;
		padding-top: 0;
		background-color: var(--pico-background-color);
		z-index: 999;
	}
	header.container hr {
		display: block;
		margin-top: 0;
	}
	header.container ul { bottom: 3rem; }

	/* Stacked-card tables for mobile */
	table thead { display: none; }
	table tfoot { display: none; }
	table tbody tr {
		display: block;
		margin-bottom: 1rem;
		padding: 0.75rem;
		border: 1px solid var(--pico-muted-border-color);
		border-radius: var(--pico-border-radius);
	}
	table tbody td,
	table tbody th[scope="row"] {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0.25rem 0;
		border: none;
	}
	table tbody td::before,
	table tbody th[scope="row"]::before {
		content: attr(data-label);
		font-weight: bold;
		margin-right: 1rem;
		flex-shrink: 0;
	}
	table tbody td[data-label=""]::before {
		display: none;
	}
	table tbody td[data-label="Status"] {
		flex-direction: column;
		align-items: stretch;
	}
	table tbody td[data-label="Status"]::before {
		margin-bottom: 0.5rem;
	}
}

/* Placeholder icons for non-image file types */
img.placeholder {
	width: 96px;
	height: 96px;
	padding: 1rem;
	opacity: 0.6;
}
[data-theme="dark"] img.placeholder {
	filter: invert(1);
}