/* Explicit global mode overrides saved presentation colours, never stored content. */
body.oursask-global-colours{background:var(--oursask-palette-background);color:var(--oursask-palette-page-text)}
.oursask-global-colours :where(a){color:var(--oursask-palette-page-link)}
.oursask-global-colours :where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--oursask-palette-accent);outline-offset:3px}
.oursask-global-colours .osm-primary-nav li.current-menu-item>a,.oursask-global-colours .osm-primary-nav li.current_page_item>a,.oursask-global-colours .osm-primary-nav a:hover,.oursask-global-colours .osm-primary-nav a:focus-visible{color:var(--oursask-palette-on-primary)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall,.oursask-feature-wall-title,.oursask-standalone-municipal-wall){--oursask-feature-wall-accent:var(--oursask-palette-primary)!important;--oursask-feature-wall-heading-bg:var(--oursask-palette-primary)!important;--oursask-feature-wall-heading-text:var(--oursask-palette-on-primary)!important;--oursask-feature-wall-border:var(--oursask-palette-border)!important;--oursask-feature-wall-muted:var(--oursask-palette-muted)!important;--oursask-feature-wall-surface:var(--oursask-palette-surface)!important;--oursask-standalone-wall-background:var(--oursask-palette-section-background)!important;color:var(--oursask-palette-text)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__card,.oursask-standalone-notice-tile,.osm-post-card,.osm-event-card,.osm-featured-event__card){background:var(--oursask-palette-surface);color:var(--oursask-palette-text);border-color:var(--oursask-palette-border)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-feature-wall__term-nav.is-enhanced .oursask-feature-wall__term-link[aria-current="true"],:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-feature-wall__term-nav.is-enhanced .oursask-feature-wall__term-link[aria-current="true"]:is(:hover,:focus){color:var(--oursask-palette-on-primary)!important}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-featured-event__action,.osm-event-card__action a,.osm-calendar-event__action a,.osm-calendar__event-preview-action,.osm-home-hero .osm-search-form button,.oursask-standalone-notice-tile__link,.osm-latest-notice__action){background-color:var(--oursask-palette-button);color:var(--oursask-palette-on-button)!important}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-standalone-notice-tile>time,:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-latest-notice__media{background:var(--oursask-palette-primary);color:var(--oursask-palette-on-primary)!important}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-standalone-municipal-wall .oursask-standalone-calendar-columns{background:var(--oursask-palette-surface)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-standalone-calendar-columns>.wp-block-column:nth-child(even){background:var(--oursask-palette-section-background)}
.oursask-global-colours .osm-latest-updates__header{color:var(--oursask-palette-on-primary)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar{--osm-calendar-surface:var(--oursask-palette-surface);--osm-calendar-soft:var(--oursask-palette-background);--osm-calendar-muted:var(--oursask-palette-muted);--osm-calendar-line:var(--oursask-palette-border);--osm-calendar-ink:var(--oursask-palette-text)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-mini-calendar,.osm-featured-event){color:var(--oursask-palette-text)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-mini-calendar__shell,.osm-mini-calendar table){background:var(--oursask-palette-surface);border-color:var(--oursask-palette-border)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar__nav{background:var(--oursask-palette-secondary);color:var(--oursask-palette-on-secondary)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar__nav h3{color:var(--oursask-palette-on-secondary)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar__nav a{background:var(--oursask-palette-primary);color:var(--oursask-palette-on-primary)!important}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-standalone-municipal-wall a:focus-visible{outline-color:var(--oursask-palette-accent)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-calendar,.osm-event-card,.osm-events-mini__item,.osm-featured-event__card){--osm-event-color:var(--oursask-palette-primary)!important;--osm-event-bg:var(--oursask-palette-background)!important}
.oursask-global-colours .our-slider{--our-slider-nav-background:var(--oursask-palette-secondary);--our-slider-nav-color:var(--oursask-palette-on-secondary);--our-slider-feature-card-background:var(--oursask-palette-surface);--our-slider-feature-icon-color:var(--oursask-palette-primary);--our-slider-feature-icon-background:var(--oursask-palette-background);--our-slider-feature-title-color:var(--oursask-palette-text);--our-slider-feature-description-color:var(--oursask-palette-muted);--our-slider-event-button-background:var(--oursask-palette-button);--our-slider-event-button-color:var(--oursask-palette-on-button)}

body.oursask-global-colours .osm-site-header .osm-primary-nav > div > ul > li:is(.current-menu-item,.current_page_item,.current-menu-parent,.current_page_parent,.current-menu-ancestor,.current_page_ancestor) > a {
	background:var(--oursask-palette-menu-selection);
	color:var(--oursask-palette-on-menu-selection);
}

:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-standalone-municipal-feed--notices,.osm-latest-updates){background-color:var(--oursask-palette-section-background)}

/* Titles on content surfaces; coloured title banners use their own foreground. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-page-title, :is(.entry-content,.osm-entry__content) .wp-block-heading:not(.has-text-color, .has-background, .has-background *, .has-text-color *, .wp-block-cover *, .our-slider *), .oursask-standalone-municipal-feed__heading,
	.oursask-feature-wall--heading-plain .oursask-feature-wall__heading,
	.oursask-feature-wall__title, .oursask-feature-wall__title a,
	.oursask-standalone-notice-tile h4 a, .osm-latest-notice h4 a,
	.osm-post-card__title, .osm-post-card__title a,
	.osm-event-card__title, .osm-event-card__title a,
	.osm-featured-event__content > h3, .osm-featured-event__content > h3 a) {
	color:var(--oursask-content-title,var(--oursask-palette-page-content-title))!important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__action a,
	.oursask-feature-wall--heading-plain .oursask-feature-wall__more,
	.oursask-standalone-municipal-feed--notices > p > a,
	.osm-post-card__more, .osm-home-events__more a, .osm-events-mini__more a,
	.osm-calendar__more, .oursask-footer-widget--events .oursask-footer-more a) {
	color:var(--oursask-content-more,var(--oursask-palette-read-more))!important;
}

:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .wp-block-oursask-quick-links{--oursask-ql-primary:var(--oursask-palette-button);--oursask-ql-on-primary:var(--oursask-palette-on-button);--oursask-ql-secondary:var(--oursask-palette-button-hover);--oursask-ql-on-secondary:var(--oursask-palette-on-button-hover)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background):not(.has-text-color){background-color:var(--oursask-palette-button);color:var(--oursask-palette-on-button)}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.entry-content,.osm-entry__content) :is(p,li)>a:not([class], .has-background *, .has-text-color *, .wp-block-cover *, .our-slider *, .oursask-text-card *){color:var(--oursask-content-link,var(--oursask-palette-page-link))}

/* Event metadata is text on the card surface, even when the brand is very light. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-featured-event__date,.osm-featured-event__badges > span,.osm-event-card__source,.osm-event-card__date) {
    background-color:transparent;
    color:var(--oursask-palette-event-detail)!important;
}

/* Category names share the same card-surface contrast check as event metadata. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__category,.osm-post-card__categories),
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__category,.osm-post-card__categories) a {
    color:var(--oursask-palette-event-detail)!important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__category,.osm-post-card__categories) a:is(:hover,:focus-visible) {
    filter:none;
    text-decoration:underline!important;
}

/* Resolve text colours on the surface where the text is displayed. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-standalone-municipal-wall,.oursask-standalone-municipal-feed--notices,.oursask-feature-wall,.osm-latest-updates) {
    --oursask-content-title:var(--oursask-palette-section-content-title);
    --oursask-content-more:var(--oursask-palette-section-read-more);
    --oursask-content-link:var(--oursask-palette-section-link);
    color:var(--oursask-palette-section-text);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__card,.oursask-standalone-notice-tile,.osm-post-card,.osm-latest-notice,.osm-event-card,.osm-featured-event__card) {
    --oursask-content-title:var(--oursask-palette-card-content-title);
    --oursask-content-more:var(--oursask-palette-card-read-more);
    --oursask-content-link:var(--oursask-palette-card-link);
    background-color:var(--oursask-palette-surface);
    color:var(--oursask-palette-card-text);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.oursask-feature-wall__meta,.oursask-standalone-notice-tile p,.osm-post-card__meta) {
    color:var(--oursask-palette-card-muted);
}

:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-feature-wall :is(.oursask-feature-wall__title a,.oursask-feature-wall__action a):is(:hover,:focus-visible) {
    filter:none;
    text-decoration:underline!important;
}

:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.osm-featured-event__action,.osm-event-card__action a,.osm-calendar-event__action a,.osm-calendar__event-preview-action,.osm-home-hero .osm-search-form button,.oursask-standalone-notice-tile__link,.osm-latest-notice__action):is(:hover,:focus-visible),
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background):not(.has-text-color):is(:hover,:focus-visible) {
    background-color:var(--oursask-palette-button-hover)!important;
    color:var(--oursask-palette-on-button-hover)!important;
    filter:none;
}

/* Use matched foregrounds and surfaces; brand colours can be very pale. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar {
    --osm-calendar-ink:var(--oursask-palette-card-text);
    --osm-calendar-muted:var(--oursask-palette-card-muted);
    background-color:var(--oursask-palette-surface);
    color:var(--osm-calendar-ink);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__grid-wrap,.osm-calendar__grid,.osm-calendar__view-switcher,.osm-calendar__event-preview,.osm-calendar-event,.osm-calendar__search input,.osm-calendar__filter select) {
    background-color:var(--oursask-palette-surface);
    color:var(--osm-calendar-ink);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__day--outside,.osm-calendar__day--selected,.osm-calendar__grid th) {
    background-color:var(--oursask-palette-section-background);
    color:var(--oursask-palette-section-text);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__month-arrow,.osm-calendar__today,.osm-calendar__view-switcher a,.osm-calendar__filter-actions a,.osm-calendar__day-head a,.osm-calendar__more) {
    background-color:var(--oursask-palette-surface);
    color:var(--oursask-palette-card-link)!important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__day--outside,.osm-calendar__day--selected) .osm-calendar__day-head a {
    background-color:transparent;
    color:var(--oursask-palette-section-link)!important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__filter-actions button,.osm-calendar__view-switcher a[aria-current="page"],.osm-calendar__day--selected .osm-calendar__day-head a) {
    background-color:var(--oursask-palette-button);
    color:var(--oursask-palette-on-button)!important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__filter-actions button,.osm-calendar__filter-actions a,.osm-calendar__view-switcher a,.osm-calendar__month-arrow,.osm-calendar__today,.osm-calendar__day-head a):is(:hover,:focus-visible) {
    background-color:var(--oursask-palette-button-hover);
    color:var(--oursask-palette-on-button-hover)!important;
    filter:none;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__event-chip,.osm-calendar__event-preview-badges span,.osm-calendar-event__source,.osm-calendar-event__category,.osm-calendar-event__date-tile,.osm-calendar__event-preview-media>span) {
    background-color:var(--oursask-palette-section-background);
    color:var(--oursask-palette-section-text)!important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar__filters label,.osm-calendar__legend li,.osm-calendar-event__details dt,.osm-calendar-event__details dd,.osm-calendar-event__excerpt,.osm-calendar__event-preview-details dt,.osm-calendar__event-preview-details dd) {
    color:var(--osm-calendar-muted);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-calendar :is(.osm-calendar-event__title a,.osm-calendar__event-preview h4 a):is(:hover,:focus-visible) {
    color:var(--oursask-palette-card-link)!important;
    text-decoration:underline!important;
}

/* Match foregrounds to the card surface in mini calendars and category filters. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar td {
 background: var(--oursask-palette-surface);
 color: var(--oursask-palette-card-text);
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar .osm-mini-calendar__day--outside {
 color: var(--oursask-palette-card-muted) !important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar .osm-mini-calendar__day--today,
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar td > a {
 color: var(--oursask-palette-event-detail) !important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-mini-calendar td > a:is(:hover,:focus-visible),
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-feature-wall__term-nav .oursask-feature-wall__term-link:is(:hover,:focus-visible,[aria-current="true"]) {
 background: var(--oursask-palette-primary);
 color: var(--oursask-palette-on-primary) !important;
 filter: none;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .oursask-feature-wall__term-nav .oursask-feature-wall__term-link:not(:hover,:focus-visible,[aria-current="true"]) {
 background: var(--oursask-palette-surface);
 color: var(--oursask-palette-card-link) !important;
}
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) .osm-featured-event__content > p {
 color: var(--oursask-palette-card-muted);
}
body.oursask-global-colours .osm-site-footer {
 --osm-footer-bg: var(--oursask-palette-surface) !important;
 --osm-footer-text: var(--oursask-palette-card-text) !important;
 --osm-footer-link: var(--oursask-palette-card-link) !important;
 --oursask-content-more: var(--oursask-palette-card-read-more);
}

/* Author-coloured blocks keep their own text and link colours. */
:is(body.oursask-global-colours, body.oursask-content-colours .osm-site-main) :is(.entry-content,.osm-entry__content)
 :is(.has-text-color,.wp-block-cover) a:not([class]):not([style*="color"]) {
 color: var(--wp--style--color--link, inherit);
 text-decoration: underline;
}

body.oursask-content-colours .osm-site-main {
 background-color: var(--oursask-palette-background);
 color: var(--oursask-palette-page-text);
}
body.oursask-global-colours .oursask-feature-wall-title__banner,
body.oursask-global-colours .oursask-feature-wall--heading-banner .oursask-feature-wall__header {
 --oursask-feature-wall-heading-bg: var(--oursask-palette-primary);
 --oursask-feature-wall-heading-text: var(--oursask-palette-on-primary);
}
