/* MKA Regions — kept close to standard WordPress styling. */

.mkar h2 { margin-top: 24px; }
.mkar-filter { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 12px 0 8px; }
.mkar-table { margin-bottom: 8px; }
.mkar-table th.num, .mkar-table td.num { text-align: right; }
.mkar-table td { vertical-align: middle; }
.mkar-table tr.mkar-current td { font-weight: 600; }
.mkar-met { color: #00a32a; }
.mkar-warn { color: #b32d2e; font-size: 12px; }
.mkar-updated { color: #646970; font-size: 12px; text-align: right; }
.mkar-error { padding: 10px 12px; border-left: 4px solid #d63638; background: #fcf0f1; margin: 8px 0; }

.mkar-icon { border-radius: 50%; object-fit: cover; vertical-align: middle; margin-right: 6px; }
.mkar-icon-preview img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; vertical-align: middle; margin-right: 8px; }

.mkar-region-head { display: flex; align-items: center; gap: 12px; margin: 16px 0; }
.mkar-region-head h2 { margin: 0 0 4px; }
.mkar-region-head p { margin: 0; }

.mkar-cols { display: flex; flex-wrap: wrap; gap: 0 24px; }
.mkar-col { flex: 1 1 420px; min-width: 0; }
.mkar-box { background: #fff; border: 1px solid #c3c4c7; padding: 4px 16px 12px; margin-top: 16px; }
.mkar-box h3 { margin: 12px 0 4px; }
.mkar-list { margin: 8px 0 0 18px; list-style: disc; }
.mkar-tips { margin: 12px 0 0 18px; list-style: disc; }
.mkar-tips li, .mkar-list li { margin-bottom: 4px; }

/* Front end: inherit the theme, just make tables readable. */
.mkar-front table.mkar-table { width: 100%; border-collapse: collapse; }
.mkar-front .mkar-table th, .mkar-front .mkar-table td { padding: 8px; border-bottom: 1px solid #ddd; text-align: left; }
.mkar-front .mkar-table .num { text-align: right; }

/* Phones: tables become label / value rows (except small tables that fit). */
@media (max-width: 782px) {
	.mkar-table:not(.mkar-table--keep) thead { display: none; }
	.mkar-table:not(.mkar-table--keep), .mkar-table:not(.mkar-table--keep) tbody,
	.mkar-table:not(.mkar-table--keep) tr, .mkar-table:not(.mkar-table--keep) td { display: block; width: 100%; }
	.mkar-table:not(.mkar-table--keep) tr { border-bottom: 1px solid #c3c4c7; padding: 6px 0; }
	.mkar-table:not(.mkar-table--keep) td { display: flex; justify-content: space-between; gap: 12px; padding: 3px 10px; text-align: right; border: 0; }
	.mkar-table:not(.mkar-table--keep) td[data-label]::before { content: attr(data-label); font-weight: 600; text-align: left; }
	.mkar-table:not(.mkar-table--keep) td.mkar-actions { justify-content: flex-end; }
	.mkar-filter select, .mkar-filter .button { flex: 1 1 auto; }
}
.mkar-viewpage { font-size: 13px; font-weight: 400; margin-left: 8px; }

/* Region pages: same look as the MKA Departments pages (header with links right, grey search
   panel), using the Departments colours. */
.mkar-page { padding: 30px 0 60px; }
.mkar-page__title { margin: 0 0 16px; }
.mkar-section-title { margin: 40px 0 16px; }
.mkar-region {
	--mkad-navy: #12355b;
	--mkad-blue: #1d4f8f;
	--mkad-text: #1b2430;
	--mkad-muted: #5a6575;
	--mkad-border: #c5cdd8;
	--mkad-line: #e3e7ed;
	--mkad-hover: #eef3f9;
	--mkad-panel: #f4f6f9;
	display: flex;
	flex-direction: column;
	gap: 20px;
	color: var(--mkad-text);
}
.mkar-region *, .mkar-region *::before, .mkar-region *::after { box-sizing: border-box; }
.mkar-none { padding: 24px 0; margin: 0; font-style: italic; color: var(--mkad-muted); }

/* Header: icon + name left, links right */
.mkar-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; padding: 16px 0; }
.mkar-head__brand { display: flex; align-items: center; gap: 16px; min-width: 0; }
.mkar-head__brand .mkar-icon { width: 72px; height: 72px; margin: 0; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.mkar-head__id { min-width: 0; }
.mkar-region .mkar-head__name { margin: 0; font-weight: 800; font-size: 26px; line-height: 1.2; color: var(--mkad-navy); }
.mkar-head__meta { margin: 4px 0 0; font-size: 14px; color: var(--mkad-muted); }
.mkar-head__meta a { color: var(--mkad-blue); }
.mkar-head__nav { flex: 1 1 auto; display: flex; justify-content: flex-end; }
.mkar-region .mkar-head__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 4px; }
.mkar-region .mkar-head__list li { margin: 0; padding: 0; }
.mkar-region .mkar-head__link { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 14px; border-radius: 8px; font-weight: 700; font-size: 16px; letter-spacing: .02em; color: var(--mkad-blue); text-decoration: none; }
.mkar-region .mkar-head__link:hover, .mkar-region .mkar-head__link:focus-visible, .mkar-region .mkar-head__link.is-current { background: var(--mkad-hover); color: var(--mkad-navy); }

/* Search panel */
.mkar-search__form { margin: 0; display: flex; flex-direction: column; gap: 12px; padding: 20px; background: var(--mkad-panel); border: 1px solid var(--mkad-line); border-radius: 12px; }
.mkar-search__label { margin: 0; font-weight: 700; font-size: 15px; color: var(--mkad-navy); }
.mkar-search__row { display: flex; gap: 12px; }
.mkar-search__field { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 16px; background: #fff; border: 1.5px solid var(--mkad-border); border-radius: 8px; }
.mkar-search__field:focus-within { border-color: var(--mkad-navy); box-shadow: 0 0 0 3px rgba(18, 53, 91, .15); }
.mkar-search__icon { flex-shrink: 0; color: var(--mkad-muted); }
.mkar-region .mkar-search__input { flex: 1; min-width: 0; width: 100%; height: 48px; margin: 0; padding: 0; border: none !important; outline: none !important; box-shadow: none !important; background: transparent !important; font: inherit; font-size: 16px; color: var(--mkad-text); -webkit-appearance: none; appearance: none; }
.mkar-region .mkar-search__button { flex-shrink: 0; min-height: 52px; margin: 0; padding: 0 28px; border: none; border-radius: 8px; background: var(--mkad-navy); color: #fff; font: inherit; font-weight: 700; font-size: 16px; line-height: 1; cursor: pointer; }
.mkar-region .mkar-search__button:hover, .mkar-region .mkar-search__button:focus-visible { background: var(--mkad-blue); color: #fff; }

/* Panes */
.mkar-pane { display: none; }
.mkar-pane.is-active { display: block; }
.mkar-subscribe-strip { margin: 0 0 16px; padding: 12px 16px; background: var(--mkad-panel); border: 1px solid var(--mkad-line); border-radius: 8px; font-size: 15px; }
.mkar-subscribe-strip a { font-weight: 700; color: var(--mkad-blue); text-decoration: none; }
.mkar-subscribe-strip a:hover { text-decoration: underline; }

/* Calendar (subscribe / download) */
.mkar-cal { padding: 24px; background: var(--mkad-panel); border: 1px solid var(--mkad-line); border-radius: 12px; }
.mkar-region .mkar-cal__title { margin: 0 0 6px; font-size: 22px; line-height: 1.3; color: var(--mkad-navy); }
.mkar-cal__intro { margin: 0 0 18px; color: var(--mkad-muted); }
.mkar-cal__buttons { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px; }
.mkar-region .mkar-cal__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; margin: 0; padding: 0 20px; border: 1.5px solid var(--mkad-border); border-radius: 8px; background: #fff; color: var(--mkad-navy); font: inherit; font-weight: 700; font-size: 15px; line-height: 1.2; text-align: center; text-decoration: none; cursor: pointer; }
.mkar-region .mkar-cal__btn:hover, .mkar-region .mkar-cal__btn:focus-visible { background: var(--mkad-hover); color: var(--mkad-navy); }
.mkar-region .mkar-cal__btn--primary { background: var(--mkad-navy); border-color: var(--mkad-navy); color: #fff; }
.mkar-region .mkar-cal__btn--primary:hover, .mkar-region .mkar-cal__btn--primary:focus-visible { background: var(--mkad-blue); border-color: var(--mkad-blue); color: #fff; }
.mkar-cal__label { display: block; margin: 0 0 8px; font-weight: 700; font-size: 14px; color: var(--mkad-navy); }
.mkar-cal__copy { display: flex; gap: 10px; }
.mkar-region .mkar-cal__url { flex: 1 1 auto; min-width: 0; min-height: 48px; margin: 0; padding: 0 14px; border: 1.5px solid var(--mkad-border); border-radius: 8px; background: #fff; font-size: 14px; color: var(--mkad-text); }
.mkar-cal__note { margin: 16px 0 0; font-size: 13px; color: var(--mkad-muted); }
.mkar-cal__note a { color: var(--mkad-blue); }

@media (max-width: 782px) {
	.mkar-head__nav { flex: 1 1 100%; }
	.mkar-region .mkar-head__list { width: 100%; flex-wrap: nowrap; gap: 0; border: 1px solid var(--mkad-line); border-radius: 8px; overflow: hidden; }
	.mkar-region .mkar-head__list li { flex: 1 1 0; border-right: 1px solid var(--mkad-line); }
	.mkar-region .mkar-head__list li:last-child { border-right: 0; }
	.mkar-region .mkar-head__link { border-radius: 0; padding: 0 8px; min-height: 48px; }
}
@media (max-width: 600px) {
	.mkar-head__brand .mkar-icon { width: 56px; height: 56px; }
	.mkar-region .mkar-head__name { font-size: 22px; }
	.mkar-search__form { padding: 14px; border-radius: 10px; }
	.mkar-search__row, .mkar-cal__copy { flex-direction: column; gap: 10px; }
	.mkar-region .mkar-search__button { width: 100%; min-height: 48px; }
	.mkar-cal { padding: 16px; }
	.mkar-cal__buttons { flex-direction: column; }
	.mkar-region .mkar-cal__btn { width: 100%; }
}

.mkar-region-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 16px; }
.mkar-region-grid li { margin: 0; }
.mkar-region-grid a { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 16px; border: 1px solid #e2e4e7; background: #fff; text-align: center; text-decoration: none; height: 100%; }
.mkar-region-grid a:hover { border-color: #c29f66; }
.mkar-region-grid .mkar-icon { margin: 0; }

/* News tab: the homepage grid from [fetch-news-homepage], so region pages match the homepage
   even if the theme only styles it there. Featured post left, 3 x 2 grid right; stacks on phones. */
.mkar-region .latest__news.container { max-width: none; padding-left: 0; padding-right: 0; }
.mkar-region .grid-container { display: grid; grid-template-columns: 1fr; gap: 24px; }
.mkar-region .grid-regular { display: grid; grid-template-columns: 1fr; gap: 24px; }
.mkar-region .grid-item, .mkar-region .grid-featured { min-width: 0; }
.mkar-region .item-article { height: 100%; box-shadow: 0 2px 8px rgba(0, 0, 0, .06); }
.mkar-region .item-article .media { background-size: cover; background-position: center; background-repeat: no-repeat; }
.mkar-region .item--featured .media { height: 300px; }
.mkar-region .item-article .title { margin: 0 0 12px; line-height: 1.25; }
.mkar-region .item-article .title a { color: #13284b; text-decoration: none; font-weight: 700; }
.mkar-region .item--featured .meta { margin: 0 0 16px; color: #13284b; font-weight: 700; text-transform: uppercase; }
.mkar-region .item--featured .meta ~ .btn,
.mkar-region .item--featured .btn { background: #c29f66; border: 2px solid #b8955a; color: #13284b; font-weight: 700; text-transform: uppercase; text-align: center; padding: 10px; }
.mkar-region .item--grid .desc { margin: 0; }
@media (min-width: 576px) {
	.mkar-region .grid-regular { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 992px) {
	.mkar-region .grid-container { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 32px; }
	.mkar-region .grid-regular { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
	.mkar-region .item--featured .media { height: 440px; }
}
.mkar-user-filter { margin-bottom: 6px; }
.mkar-user-select { min-width: 25em; max-width: 100%; }

/* Region search results (same style as the Departments results page) */
.mkar-results { display: flex; flex-direction: column; }
.mkar-results__top { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 16px; }
.mkar-region .mkar-results__heading { margin: 0; font-size: 20px; line-height: 1.3; color: var(--mkad-navy); }
.mkar-results__clear { font-weight: 700; color: var(--mkad-blue); text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; }
.mkar-results__clear:hover { text-decoration: underline; }
.mkar-region .mkar-results__group { margin: 24px 0 8px; font-size: 16px; color: var(--mkad-navy); }
.mkar-results__none, .mkar-results__more { margin: 8px 0 0; color: var(--mkad-muted); }
.mkar-results__more a { font-weight: 700; color: var(--mkad-blue); text-decoration: none; }
.mkar-region .mkar-results__list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--mkad-line); }
.mkar-region .mkar-results__item { margin: 0; padding: 16px 0; border-bottom: 1px solid var(--mkad-line); display: flex; flex-direction: column; gap: 4px; }
.mkar-results__trail { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #2c5f27; }
.mkar-region a.mkar-results__title { font-size: 18px; font-weight: 700; color: var(--mkad-navy); text-decoration: none; }
.mkar-region a.mkar-results__title:hover { text-decoration: underline; }
.mkar-results__excerpt { margin: 0; color: var(--mkad-muted); font-size: 15px; line-height: 1.5; }
@media (max-width: 600px) { .mkar-region a.mkar-results__title { font-size: 17px; } }
