/* ==========================================================================
   IMH ANNOUNCEMENTS — shared by the IMH Announcement List and
   IMH Announcements Legend ACF blocks
   ========================================================================== */

/* Community Listing pill — same shape as the imh-books badges */
.imh-announcements-pill {
	display: inline-block;
	padding: 2px 8px;
	border-radius: var(--imh-radius-full, 9999px);
	background-color: var(--wp--preset--color--amber-100);
	color: var(--wp--preset--color--amber-700);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 500;
	line-height: 1.5;
	white-space: nowrap;
}

.imh-announcements-visually-hidden {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* ==========================================================================
   IMH ANNOUNCEMENT LIST — .imh-announcement-list
   ========================================================================== */

/* The box. Scrolls vertically once content exceeds the block's
   "Maximum Height" setting, passed in as --imh-announcement-list-max-height. */
.imh-announcement-list {
	background-color: var(--wp--preset--color--surface-white);
	border: 1px solid var(--wp--preset--color--surface-parchment);
	border-radius: var(--imh-radius-lg, 10px);
	box-shadow: var(--wp--preset--shadow--subtle);
	padding: 4px 24px;
}

.imh-announcement-list--scroll {
	max-height: var(--imh-announcement-list-max-height, 400px);
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: var(--wp--preset--color--sage-300) transparent;
}

.imh-announcement-list:focus-visible {
	outline: 2px solid var(--wp--preset--color--sage-500);
	outline-offset: 2px;
}

.imh-announcement-list__item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	padding: 20px 0;
}

.imh-announcement-list__item + .imh-announcement-list__item {
	border-top: 1px solid var(--wp--preset--color--surface-parchment);
}

.imh-announcement-list__body {
	flex: 1;
	min-width: 0;
}

.imh-announcement-list__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.5rem;
	color: var(--wp--preset--color--warm-800);
	line-height: 1.25;
	margin: 0 0 6px;
}

.imh-announcement-list__description {
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--sm);
	color: var(--wp--preset--color--warm-600);
	line-height: 1.6;
}

.imh-announcement-list__description > * {
	margin: 0 0 8px;
}

.imh-announcement-list__description > :last-child {
	margin-bottom: 0;
}

.imh-announcement-list__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 12px;
}

.imh-announcement-list__labels {
	margin: 0 0 8px;
}

/* Outline button — matches the theme's "Outline (Primary, on Light)" style */
.imh-announcement-list__button {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
	padding: 7px 18px;
	border: 2px solid var(--wp--preset--color--primary-600);
	border-radius: var(--imh-radius-md, 6px);
	background-color: transparent;
	color: var(--wp--preset--color--primary-600);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 500;
	text-decoration: none;
	transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.imh-announcement-list__button:hover,
.imh-announcement-list__button:focus-visible {
	background-color: var(--wp--preset--color--primary-600);
	color: #fff;
	text-decoration: none;
	transform: translateY(-1px);
}

.imh-announcement-list__button-icon {
	flex-shrink: 0;
}

.imh-announcement-list__notes {
	margin: 0;
	max-width: 320px;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--warm-500);
	font-style: italic;
	line-height: 1.5;
	border-left: 2px solid var(--wp--preset--color--surface-parchment);
	padding-left: 10px;
}

/* Width is capped; height follows each image's own aspect ratio. */
.imh-announcement-list__media {
	flex-shrink: 0;
	width: 120px;
}

.imh-announcement-list__media .imh-announcement-list__thumb {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--imh-radius-md, 6px);
	margin: 0;
	box-shadow: none;
}

.imh-announcement-list--empty {
	padding: 20px 24px;
}

.imh-announcement-list__placeholder {
	margin: 0;
	color: var(--wp--preset--color--warm-500);
}

/* ==========================================================================
   IMH ANNOUNCEMENTS LEGEND — .imh-announcements-legend
   ========================================================================== */

.imh-announcements-legend {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin: 12px 0 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--warm-500);
	line-height: 1.5;
}

@media (max-width: 600px) {
	.imh-announcement-list {
		padding: 4px 16px;
	}

	.imh-announcement-list__media {
		width: 88px;
	}
}
