/* Drug Eye Africa — plugin-rendered lists: Newsroom page, Countries page, country archives */

:root {
	--dea-ink: #1A1A1A;
	--dea-muted: #5A6360;
	--dea-line: #E3E6E5;
	--dea-mist: #F4F7F6;
	--dea-teal: #0B4F4A;
	--dea-amber: #D97706;
	--dea-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
	--dea-sans: Inter, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
}

/* The theme paints a grey ground with a boxed white content area on archives and
   plain pages. Every other page on the site is white edge to edge, so match that. */
body.dea-list-page,
body.dea-list-page #content,
body.dea-list-page .ast-container { background: #FFFFFF !important; }
body.dea-list-page.tax-dea_country .ast-container { max-width: none; padding-left: 0; padding-right: 0; }
body.dea-list-page.page:not(.elementor-page) .entry-header,
body.dea-list-page.page .ast-single-post-featured-section { display: none; }
body.dea-list-page .content-area, body.dea-list-page #primary { margin-top: 0 !important; }
body.dea-list-page.page:not(.elementor-page) .entry-content { max-width: 1200px; margin: 0 auto; padding: 32px 24px 72px; }
body.dea-list-page.page article.ast-article-single { border: 0; box-shadow: none; padding: 0; background: transparent; }

/* ---------- shared page furniture ---------- */
.dea-list__inner { max-width: 1200px; margin: 0 auto; padding: 32px 24px 72px; font-family: var(--dea-sans); color: var(--dea-ink); }
.dea-list__kicker { margin: 0 0 10px; font-family: var(--dea-sans); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--dea-teal); }
.dea-list__kicker a { color: inherit; text-decoration: none; }
.dea-list__kicker a:hover { text-decoration: underline; }
.dea-list__title { margin: 0 0 10px; font-family: var(--dea-serif); font-size: clamp(34px, 5vw, 48px); font-weight: 700; line-height: 1.08; letter-spacing: -.01em; color: var(--dea-ink); }
.dea-list__lede { margin: 0; max-width: 70ch; font-family: var(--dea-sans); font-size: 16px; line-height: 1.6; color: var(--dea-muted); }

/* ---------- one story ---------- */
.dea-list { list-style: none; margin: 16px 0 0; padding: 0; border-top: 1px solid var(--dea-line); font-family: var(--dea-sans); }
.dea-story { padding: 28px 0 30px; border-bottom: 1px solid var(--dea-line); }
.dea-story__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 12px; margin: 0 0 12px; font-size: 12.5px; color: var(--dea-muted); }
.dea-story__topic { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--dea-teal); text-decoration: none; }
.dea-story__topic:hover { text-decoration: underline; }
.dea-story__topic + time::before { content: ""; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: #B7C0BC; margin: 0 8px 3px 0; }
.dea-story__headline { margin: 0 0 10px; font-family: var(--dea-serif); font-size: 24px; font-weight: 700; line-height: 1.25; }
.dea-story__headline a { color: var(--dea-ink); text-decoration: none; }
.dea-story__headline a:hover { color: var(--dea-teal); }
.dea-story__excerpt { margin: 0 0 14px; max-width: 70ch; font-size: 15px; line-height: 1.6; color: var(--dea-muted); }
.dea-story__byline { margin: 0; font-size: 12.5px; }
.dea-story__byline span { color: #7A837F; }
.dea-story__byline a { color: var(--dea-teal); font-weight: 600; text-decoration: none; }
.dea-story__byline a:hover { text-decoration: underline; }
.dea-list__empty { padding: 48px 0; text-align: center; color: var(--dea-muted); }
.dea-list__empty a { color: var(--dea-teal); }

.dea-list__pagination { margin-top: 28px; }
.dea-list__pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.dea-list__pagination .page-numbers { display: inline-block; padding: 8px 12px; font: 600 13px/1 var(--dea-sans); color: var(--dea-teal); border: 1px solid var(--dea-line); border-radius: 4px; text-decoration: none; }
.dea-list__pagination .page-numbers.current { background: var(--dea-teal); color: #FFFFFF; border-color: var(--dea-teal); }
.dea-list__pagination .page-numbers.dots { border: 0; }
.dea-list__pagination .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ---------- Newsroom page ---------- */
.dea-newsroom__head { margin: 0 0 26px; }

/* section tabs */
.dea-tabs { display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 14px; border-bottom: 2px solid var(--dea-ink); font-family: var(--dea-sans); }
.dea-tabs__tab { display: inline-flex; align-items: center; gap: 8px; padding: 12px 16px 10px; margin-bottom: -2px; font-size: 13px; font-weight: 600; letter-spacing: .02em; color: var(--dea-muted); text-decoration: none !important; border-bottom: 2px solid transparent; }
.dea-tabs__tab:hover { color: var(--dea-ink); }
.dea-tabs__tab.is-active { color: var(--dea-ink); border-bottom-color: var(--dea-amber); }
.dea-tabs__count { font-size: 11px; font-weight: 700; padding: 2px 7px; border-radius: 999px; background: var(--dea-mist); color: var(--dea-muted); }
.dea-tabs__tab.is-active .dea-tabs__count { background: var(--dea-teal); color: #FFFFFF; }

/* filters (country, dates) */
.dea-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 12px 18px; padding: 14px 0 18px; margin: 0; font-family: var(--dea-sans); border-bottom: 1px solid var(--dea-line); }
.dea-filters__field { display: flex; flex-direction: column; gap: 6px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--dea-muted); }
.dea-filters__field select, .dea-filters__field input[type="date"] { min-width: 170px; padding: 9px 12px; font: 500 14px/1.3 var(--dea-sans); color: var(--dea-ink); background: #FFFFFF; border: 1px solid #C9D1CE; border-radius: 4px; text-transform: none; letter-spacing: 0; }
.dea-filters__field select:focus-visible, .dea-filters__field input:focus-visible { outline: 2px solid var(--dea-amber); outline-offset: 2px; }
.dea-filters__actions { display: flex; align-items: center; gap: 14px; }
.dea-filters__apply { padding: 10px 18px; font: 600 14px/1.2 var(--dea-sans); color: #FFFFFF; background: var(--dea-teal); border: 0; border-radius: 4px; cursor: pointer; }
.dea-filters__apply:hover { background: #083B37; }
.dea-filters__clear { font-size: 14px; color: var(--dea-muted); text-decoration: underline; }
.dea-filters__result { margin: 14px 0 0; font-family: var(--dea-sans); font-size: 13px; color: var(--dea-muted); }

/* lead story */
.dea-lead { margin: 28px 0 8px; padding: 28px 32px 30px; background: var(--dea-mist); border-left: 4px solid var(--dea-teal); font-family: var(--dea-sans); }
.dea-lead__label { margin: 0 0 10px; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--dea-amber); }
.dea-lead__headline { margin: 0 0 12px; font-family: var(--dea-serif); font-size: clamp(26px, 3.4vw, 36px); font-weight: 700; line-height: 1.15; letter-spacing: -.01em; }
.dea-lead__headline a { color: var(--dea-ink); text-decoration: none !important; }
.dea-lead__headline a:hover { color: var(--dea-teal); }
.dea-lead__deck { margin: 0 0 16px; max-width: 72ch; font-size: 17px; line-height: 1.6; color: #3A4441; }
.dea-lead__more { font-size: 14px; font-weight: 600; color: var(--dea-teal); text-decoration: none !important; }
.dea-lead__more:hover { text-decoration: underline !important; }

/* day headers inside the list */
.dea-list--dated { border-top: 0; }
.dea-list__day { padding: 26px 0 0; border-bottom: 0; }
.dea-list__day span { display: inline-block; padding-bottom: 6px; font-family: var(--dea-sans); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--dea-teal); border-bottom: 2px solid var(--dea-teal); }
.dea-list__day + .dea-story { padding-top: 22px; }

/* country in the meta line */
.dea-story__country { font-size: 12.5px; font-weight: 600; color: var(--dea-ink); text-decoration: none !important; }
.dea-story__country:hover { color: var(--dea-teal); }
.dea-story__topic + .dea-story__country::before,
.dea-story__country + time::before { content: ""; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: #B7C0BC; margin: 0 8px 3px 0; }

/* ---------- Countries page ---------- */
.dea-countries__summary { margin: 0 0 22px; font-family: var(--dea-sans); font-size: 15px; color: var(--dea-muted); }
.dea-countries__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.dea-countries__link { display: flex; flex-direction: column; gap: 10px; height: 100%; padding: 22px 24px; background: #FFFFFF; border: 1px solid var(--dea-line); border-top: 3px solid var(--dea-teal); color: inherit; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.entry-content .dea-countries__link, .dea-countries__link, .dea-countries__link:hover, .dea-countries__link:focus { text-decoration: none !important; }
.dea-countries__link:hover { border-color: var(--dea-teal); box-shadow: 0 8px 24px rgba(11, 79, 74, .10); transform: translateY(-2px); }
.dea-countries__name { font-family: var(--dea-serif); font-size: 24px; font-weight: 700; line-height: 1.2; color: var(--dea-ink); }
.dea-countries__meta { display: flex; justify-content: space-between; gap: 12px; font-family: var(--dea-sans); font-size: 12.5px; color: var(--dea-muted); }
.dea-countries__count { font-weight: 600; color: var(--dea-teal); }

/* ---------- Country archive filters ---------- */
.dea-country__head { margin: 0 0 28px; }
.dea-country__filters { display: flex; flex-wrap: wrap; align-items: end; gap: 14px 18px; padding: 18px 20px; margin: 0 0 8px; background: var(--dea-mist); border: 1px solid var(--dea-line); }
.dea-country__field { display: flex; flex-direction: column; gap: 6px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--dea-muted); }
.dea-country__field select, .dea-country__field input[type="date"] { min-width: 170px; padding: 9px 12px; font: 500 14px/1.3 var(--dea-sans); color: var(--dea-ink); background: #FFFFFF; border: 1px solid #C9D1CE; border-radius: 4px; text-transform: none; letter-spacing: 0; }
.dea-country__field select:focus-visible, .dea-country__field input:focus-visible { outline: 2px solid var(--dea-amber); outline-offset: 2px; }
.dea-country__actions { display: flex; align-items: center; gap: 14px; }
.dea-country__apply { padding: 10px 18px; font: 600 14px/1.2 var(--dea-sans); color: #FFFFFF; background: var(--dea-teal); border: 0; border-radius: 4px; cursor: pointer; }
.dea-country__apply:hover { background: #083B37; }
.dea-country__clear { font-size: 14px; color: var(--dea-muted); text-decoration: underline; }
.dea-country__result { margin: 14px 0 0; font-size: 13px; color: var(--dea-muted); }

@media (max-width: 1024px) { .dea-countries__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
	.dea-list__inner, body.dea-list-page.page .entry-content { padding: 28px 16px 56px; }
	.dea-countries__list { grid-template-columns: 1fr; gap: 12px; }
	.dea-country__filters { padding: 14px; }
	.dea-country__field, .dea-country__field select, .dea-country__field input[type="date"] { width: 100%; min-width: 0; }
	.dea-story__headline { font-size: 21px; }
	.dea-tabs__tab { padding: 10px 12px 8px; }
	.dea-lead { padding: 20px 18px 22px; }
	.dea-filters__field, .dea-filters__field select, .dea-filters__field input[type="date"] { width: 100%; min-width: 0; }
}

/* The theme's content-area link rules outrank the component rules on plain pages. */
body.dea-list-page .entry-content .dea-story__headline a,
body.dea-list-page .entry-content .dea-lead__headline a,
body.dea-list-page .entry-content .dea-countries__name { color: var(--dea-ink); text-decoration: none; }
body.dea-list-page .entry-content .dea-story__headline a:hover,
body.dea-list-page .entry-content .dea-lead__headline a:hover { color: var(--dea-teal); text-decoration: none; }
body.dea-list-page .entry-content .dea-story__topic,
body.dea-list-page .entry-content .dea-story__byline a,
body.dea-list-page .entry-content .dea-lead__more,
body.dea-list-page .entry-content .dea-story__country,
body.dea-list-page .entry-content .dea-tabs__tab,
body.dea-list-page .entry-content .dea-list__kicker a { text-decoration: none; }
body.dea-list-page .entry-content .dea-story__topic:hover,
body.dea-list-page .entry-content .dea-story__byline a:hover,
body.dea-list-page .entry-content .dea-lead__more:hover { text-decoration: underline; }

/* ---------- Alerts & Recalls board ---------- */
/* placeholder panel for notices without a picture: same block, brand colours */
.dea-card .dea-card__media--placeholder { display: flex; flex-direction: column; justify-content: flex-end; gap: 6px; padding: 18px 20px; background: linear-gradient(135deg, #0B4F4A 0%, #0F6B63 100%); position: relative; }
.dea-card__ph-mark { position: absolute; top: 16px; right: 16px; width: 22px; height: 22px; border: 2.5px solid rgba(255,255,255,.55); }
.dea-card__ph-mark::after { content: ""; position: absolute; inset: 5px; background: var(--dea-amber); }
.dea-card__ph-country { font-family: var(--dea-serif); font-size: 26px; font-weight: 700; line-height: 1.1; color: #FFFFFF; }
.dea-card__ph-brand { font-family: var(--dea-sans); font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.7); }
.dea-card--lead .dea-card__ph-country { font-size: 34px; }
.dea-board { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 36px; align-items: start; font-family: var(--dea-sans); color: var(--dea-ink); }
.dea-board__side { position: sticky; top: 96px; display: flex; flex-direction: column; gap: 22px; }
.dea-board__filters { border-top: 2px solid var(--dea-ink); }
.dea-board__filters-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 0 12px; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; list-style: none; }
.dea-board__filters-title::-webkit-details-marker { display: none; }
.dea-board__clear { font-size: 12px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--dea-amber); text-decoration: none !important; }
.dea-board__clear:hover { text-decoration: underline !important; }
.dea-board__filters-body { display: flex; flex-direction: column; gap: 4px; }

.dea-facet { margin: 0; padding: 14px 0 16px; border: 0; border-top: 1px solid var(--dea-line); min-width: 0; }
.dea-facet:first-child { border-top: 0; padding-top: 4px; }
.dea-facet__title { padding: 0; margin: 0 0 10px; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--dea-muted); }
.dea-facet__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.dea-facet__link { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 7px 6px; margin: 0 -6px; border-radius: 4px; font-size: 14.5px; color: var(--dea-ink); text-decoration: none !important; }
.dea-facet__link:hover { background: var(--dea-mist); }
.dea-facet__box { width: 16px; height: 16px; border: 1.5px solid #9AA6A2; border-radius: 3px; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; line-height: 1; color: #FFFFFF; background: #FFFFFF; }
.dea-facet__row.is-on .dea-facet__box { background: var(--dea-teal); border-color: var(--dea-teal); }
.dea-facet__row.is-on .dea-facet__label { font-weight: 600; }
.dea-facet__label { overflow-wrap: anywhere; }
.dea-facet__count { font-size: 12.5px; font-variant-numeric: tabular-nums; color: var(--dea-muted); }
.dea-facet__pp { display: flex; gap: 6px; }
.dea-filters__pp { display: inline-block; min-width: 40px; padding: 8px 10px; text-align: center; font: 600 13px/1 var(--dea-sans); color: var(--dea-ink); background: var(--dea-mist); border: 1px solid var(--dea-line); border-radius: 4px; text-decoration: none !important; }
.dea-filters__pp.is-active { background: var(--dea-teal); border-color: var(--dea-teal); color: #FFFFFF; }

.dea-board__showing { margin: 0 0 14px; font-size: 12.5px; color: var(--dea-muted); }

.dea-card { display: flex; flex-direction: column; background: #FFFFFF; border: 1px solid var(--dea-line); border-top: 3px solid var(--dea-teal); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.dea-card:hover { border-color: var(--dea-teal); box-shadow: 0 10px 28px rgba(11, 79, 74, .10); transform: translateY(-2px); }
.dea-card__media { display: block; height: 180px; overflow: hidden; background: var(--dea-mist); text-decoration: none !important; }
.dea-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dea-card__body { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; flex: 1; }
.dea-card__label { margin: 0; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--dea-amber); }
.dea-card__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; margin: 0; font-size: 12.5px; color: var(--dea-muted); }
.dea-card__country { font-weight: 700; color: var(--dea-teal); text-decoration: none !important; }
.dea-card__country:hover { text-decoration: underline !important; }
.dea-card__country + time::before { content: ""; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: #B7C0BC; margin: 0 8px 3px 0; }
.dea-card__headline { margin: 0; font-family: var(--dea-serif); font-size: 21px; font-weight: 700; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.dea-card__headline a { color: var(--dea-ink); text-decoration: none !important; }
.dea-card__headline a:hover { color: var(--dea-teal); }
.dea-card__deck { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--dea-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.dea-card__more { margin-top: auto; padding-top: 6px; font-size: 13px; font-weight: 600; color: var(--dea-teal); text-decoration: none !important; }
.dea-card__more:hover { text-decoration: underline !important; }

.dea-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 0 0 8px; }

.dea-card--lead { margin: 0 0 24px; border-top-width: 4px; }
.dea-card--lead { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.dea-card--lead .dea-card__media { height: auto; min-height: 300px; order: 2; }
.dea-card--lead .dea-card__body { padding: 26px 28px 28px; gap: 12px; }
.dea-card--lead .dea-card__headline { font-size: clamp(24px, 2.6vw, 32px); line-height: 1.15; letter-spacing: -.01em; }
.dea-card--lead .dea-card__deck { font-size: 16px; -webkit-line-clamp: 4; color: #3A4441; }

@media (max-width: 1100px) { .dea-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 860px) {
	.dea-board { grid-template-columns: 1fr; gap: 24px; }
	.dea-board__side { position: static; }
	.dea-board__filters:not([open]) .dea-board__filters-body { display: none; }
	.dea-board__filters-title::after { content: "+"; font-size: 18px; font-weight: 400; }
	.dea-board__filters[open] .dea-board__filters-title::after { content: "–"; }
}
@media (max-width: 720px) {
	.dea-cards { grid-template-columns: 1fr; gap: 14px; }
	.dea-card--lead { grid-template-columns: 1fr; }
	.dea-card--lead .dea-card__media { order: 0; min-height: 0; height: 200px; }
}

/* ---- Newsletter preferences page ---- */
.dea-prefs { max-width: 760px; margin: 0 auto; padding: 32px 20px 64px; }
.dea-prefs__saved { background: #F4F7F6; border-left: 4px solid #0B4F4A; padding: 12px 16px; font-family: Inter, sans-serif; font-size: 15px; }
.dea-prefs__saved--error { border-left-color: #D97706; }
.dea-prefs__mode { display: block; font-family: Inter, sans-serif; font-size: 16px; margin: 10px 0; }
.dea-prefs__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px 16px; margin: 12px 0 20px 26px; }
.dea-prefs__grid.is-off { opacity: .45; }
.dea-prefs__country { font-family: Inter, sans-serif; font-size: 14px; }
.dea-prefs__save { background: #0B4F4A; color: #fff; border: 0; padding: 12px 22px; font: 600 15px Inter, sans-serif; border-radius: 4px; cursor: pointer; }
.dea-prefs__note { color: #5A6360; font-family: Inter, sans-serif; font-size: 13px; }
@media (max-width: 720px) { .dea-prefs__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 460px) { .dea-prefs__grid { grid-template-columns: 1fr; } }
