:root {
  --ua-focus-width: var(--wp--custom--accessibility--focus-width, 3px);
  --ua-focus-offset: var(--wp--custom--accessibility--focus-offset, 3px);
  --ua-content-measure: var(--wp--custom--accessibility--content-measure, 70ch);
  --ua-target-size: var(--wp--custom--accessibility--target-size, 2.75rem);
  --ua-layout-gap: var(--wp--custom--accessibility--layout-gap, clamp(1rem, 3vw, 2rem));
  --ua-sidebar-size: var(--wp--custom--accessibility--sidebar-size, minmax(14rem, 20rem));
}

* {
  box-sizing: border-box;
}

html {
  text-size-adjust: 100%;
}

body {
  overflow-wrap: anywhere;
  color: var(--uac-color-text, var(--wp--preset--color--foreground, #111));
  background-color: var(--uac-color-background, var(--wp--preset--color--background, #fff));
}

:where(a:not(.wp-element-button)) {
  color: var(--uac-color-link, var(--wp--preset--color--link, #003f88));
}

:focus-visible {
  outline: var(--ua-focus-width) solid var(--uac-color-focus, currentColor);
  outline-offset: var(--ua-focus-offset);
}

:where(a, button, input, select, textarea, summary) {
  scroll-margin-block: 6rem;
}

:where(button, input:not([type="hidden"]), select, textarea) {
  min-block-size: var(--ua-target-size);
}

.wp-site-blocks > main,
.ua-main {
  min-block-size: 40vh;
}

.ua-reading-measure :where(p, li) {
  max-inline-size: var(--ua-content-measure);
}

.ua-layout {
  display: grid;
  gap: var(--ua-layout-gap);
  margin-inline: auto;
}

.ua-layout--left-sidebar,
.ua-layout--right-sidebar,
.ua-layout--knowledge-base {
  grid-template-columns: var(--ua-sidebar-size) minmax(0, 1fr);
}

.ua-layout--right-sidebar {
  grid-template-columns: minmax(0, 1fr) var(--ua-sidebar-size);
}

.ua-layout--two-sidebars {
  grid-template-columns: var(--ua-sidebar-size) minmax(0, 1fr) var(--ua-sidebar-size);
}

.ua-sidebar {
  min-inline-size: 0;
}

.ua-reading-layout,
.ua-document-layout,
.ua-minimal-layout,
.ua-mode-text-first {
  padding-block: clamp(1rem, 4vw, 3rem);
}

.ua-mode-text-first .ua-decorative {
  display: none !important;
}

img,
video,
iframe {
  max-inline-size: 100%;
  block-size: auto;
}

@media (max-width: 60rem) {
  .ua-layout--left-sidebar,
  .ua-layout--right-sidebar,
  .ua-layout--knowledge-base,
  .ua-layout--two-sidebars {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

@media (forced-colors: active) {
  :focus-visible {
    outline: 3px solid CanvasText;
  }

  .ua-layout,
  .ua-sidebar {
    forced-color-adjust: auto;
  }
}

/* Accessible component library foundation. */
.ua-component {
  max-inline-size: 100%;
}

.ua-callout,
.ua-status-message {
  padding: clamp(.875rem, 2vw, 1.25rem);
  border: 2px solid currentColor;
  border-inline-start-width: .5rem;
}

.ua-callout__label,
.ua-status-message__label {
  margin-block-start: 0;
}

.ua-disclosure-group details {
  margin-block: .75rem;
  border: 1px solid currentColor;
  padding: .25rem .75rem .75rem;
}

.ua-disclosure-group summary {
  cursor: pointer;
  font-weight: 700;
  padding-block: .6rem;
}

.ua-data-table {
  overflow-x: auto;
}

.ua-data-table table {
  border-collapse: collapse;
  inline-size: 100%;
}

.ua-data-table :where(th, td) {
  border: 1px solid currentColor;
  padding: .6rem;
  text-align: start;
  vertical-align: top;
}

.ua-data-table th {
  font-weight: 700;
}

.ua-document-section {
  padding-block: .75rem;
}

@media (forced-colors: active) {
  .ua-callout,
  .ua-status-message,
  .ua-disclosure-group details,
  .ua-data-table :where(th, td) {
    border-color: CanvasText;
  }
}

/* Phase 38 Round 4: robust AAA-size navigation targets without enlarging icons/text. */
#stp-home-control,
.wp-block-home-link__content,
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
  min-inline-size: 44px;
  min-block-size: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}


/* Phase 38 Round 6: ultra-narrow Home/Blog reflow robustness. */
.wp-site-blocks,
.wp-site-blocks > *,
.ua-site-header,
.ua-site-header .alignwide,
.ua-reading-measure,
.wp-block-query,
.wp-block-post-template,
.wp-block-post-template > li,
.wp-block-post,
.wp-block-query-pagination,
.wp-block-query-pagination-numbers {
  min-inline-size: 0;
  max-inline-size: 100%;
}

.wp-block-query-pagination {
  flex-wrap: wrap !important;
}

.wp-block-query-pagination-numbers {
  flex-wrap: wrap;
  overflow-wrap: anywhere;
}

.wp-block-query-pagination > *,
.wp-block-query-pagination-numbers > * {
  min-inline-size: 0;
  max-inline-size: 100%;
}

@media (max-width: 20rem) {
  .wp-block-query-pagination {
    justify-content: flex-start !important;
    gap: .5rem;
  }
}
