/* Presentation rules only: identity values come from tokens.css (sources: app/content/identite.json). */
body:not(.wp-admin), .editor-styles-wrapper {
  background: var(--ueah-fond);
  color: var(--ueah-texte);
}
body:not(.wp-admin) a { color: inherit; }
.ueah-header-inner, .ueah-admin-identity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  background: var(--ueah-sable);
  color: var(--ueah-texte);
}
.ueah-header-inner { max-width: 75rem; margin-inline: auto; }
.ueah-header img, .ueah-admin-identity img { display: block; height: auto; }
.ueah-demo-banner { margin: 0; padding: .75rem 1rem; background: var(--ueah-brume); font-size: var(--wp--preset--font-size--petit, .875rem); }
.ueah-footer { padding: 1rem; background: var(--ueah-brume); }
/* Black and white double outline: readable on light, dark and photographic backgrounds. */
:where(a, button, select, input, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--ueah-accent-focus);
  outline-offset: 2px;
  box-shadow: 0 0 0 2px var(--ueah-accent-focus-contraste);
}
.ueah-skip-link { position: absolute; left: 1rem; top: -10rem; z-index: 100000; padding: .75rem; background: var(--ueah-fond); }
.ueah-skip-link:focus { top: 1rem; }
.ueah-visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
/* Appearance menu. data-theme is set by the inline head script: without script the inert button stays hidden. */
:root:not([data-theme]) .ueah-theme-switcher { display: none; }
.ueah-theme-switcher { position: relative; flex: none; }
.ueah-theme-switcher__button, .ueah-theme-switcher__menu [role="menuitemradio"] {
  display: flex;
  align-items: center;
  gap: .5rem;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
  border-radius: 0;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.ueah-theme-switcher__button { padding: .5rem .75rem; border: 1px solid currentColor; background: transparent; }
.ueah-theme-switcher svg { flex: none; width: 1.25rem; height: 1.25rem; }
.ueah-theme-switcher__caret { width: 1rem; height: 1rem; }
.ueah-theme-switcher__button .ueah-theme-switcher__icon { display: none; }
.ueah-theme-switcher[data-preference="light"] .ueah-theme-switcher__button [data-icon="light"],
.ueah-theme-switcher[data-preference="dark"] .ueah-theme-switcher__button [data-icon="dark"],
.ueah-theme-switcher[data-preference="auto"] .ueah-theme-switcher__button [data-icon="auto"] { display: block; }
.ueah-theme-switcher__menu {
  position: absolute;
  inset-inline-end: 0;
  top: calc(100% + .25rem);
  z-index: 1000;
  min-width: 12rem;
  margin: 0;
  padding: .25rem 0;
  list-style: none;
  border: 1px solid var(--ueah-texte);
  background: var(--ueah-fond);
  color: var(--ueah-texte);
  box-shadow: 0 .5rem 1.5rem rgb(0 0 0 / .25);
}
.ueah-theme-switcher__menu[hidden] { display: none; }
.ueah-theme-switcher__menu li { margin: 0; }
.ueah-theme-switcher__menu [role="menuitemradio"] {
  width: 100%;
  padding: .5rem 1rem;
  border: 0;
  background: transparent;
  text-align: start;
}
.ueah-theme-switcher__menu [role="menuitemradio"]:hover,
.ueah-theme-switcher__menu [role="menuitemradio"]:focus-visible { background: var(--ueah-brume); }
.ueah-theme-switcher__menu [aria-checked="true"] { font-weight: 700; }
.ueah-theme-switcher__check { margin-inline-start: auto; visibility: hidden; }
.ueah-theme-switcher__menu [aria-checked="true"] .ueah-theme-switcher__check { visibility: visible; }
/* Captions and credits keep the page text colour in both modes: the core greys fail on the dark background. */
figcaption.wp-element-caption { color: var(--ueah-texte); }
.ueah-credit { display: block; font-size: var(--wp--preset--font-size--petit, .875rem); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
