:root {
  --sa11y-font-face: system-ui, "Segoe UI", roboto, helvetica, arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "FontAwesome", "Font Awesome 5 Free", "Font Awesome 5 Pro", "Font Awesome 6 Free", "Font Awesome 6 Pro";
  --sa11y-large-text: 16px;
  --sa11y-normal-text: 15px;
  --sa11y-small-text: 12px;
  --sa11y-focus-color: rgba(0, 208, 255, .75);
  --sa11y-pulse-color: rgba(0, 208, 255, 0);
  --sa11y-blue: #005dff;
  --sa11y-good: #36844e;
  --sa11y-good-hover: #38a459;
  --sa11y-good-text: #fff;
  --sa11y-good-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ffffff' d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'%3E%3C/path%3E%3C/svg%3E");
  --sa11y-warning: #ffc800;
  --sa11y-warning-hover: #ffd226;
  --sa11y-warning-text: #000;
  --sa11y-warning-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23505050' d='M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z'/%3E%3C/svg%3E");
  --sa11y-warning-svg-color: #d39c00;
  --sa11y-error: #d30017;
  --sa11y-error-hover: #f00;
  --sa11y-error-text: #fff;
  --sa11y-error-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 576' %3E%3Cpath fill='%23ffffff' d='M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z'%3E%3C/path%3E%3C/svg%3E");
  --sa11y-setting-switch-on-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='%23000000' d='M384 64H192C86 64 0 150 0 256s86 192 192 192h192c106 0 192-86 192-192S490 64 384 64zm0 320c-70.8 0-128-57.3-128-128 0-70.8 57.3-128 128-128 70.8 0 128 57.3 128 128 0 70.8-57.3 128-128 128z'/%3E%3C/svg%3E");
  --sa11y-setting-switch-off-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='%23000000' d='M384 64H192C85.961 64 0 149.961 0 256s85.961 192 192 192h192c106.039 0 192-85.961 192-192S490.039 64 384 64zM64 256c0-70.741 57.249-128 128-128 70.741 0 128 57.249 128 128 0 70.741-57.249 128-128 128-70.741 0-128-57.249-128-128zm320 128h-48.905c65.217-72.858 65.236-183.12 0-256H384c70.741 0 128 57.249 128 128 0 70.74-57.249 128-128 128z'/%3E%3C/svg%3E");
  --sa11y-close-btn-svg: url("data:image/svg+xml,%3Csvg width='20px' height='20px' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 352 512'%3E%3Cpath fill='%23000000' d='M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z'%3E%3C/path%3E%3C/svg%3E");
  --sa11y-hidden-icon-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M320 400c-75.85 0-137.25-58.71-142.9-133.11L72.2 185.82c-13.79 17.3-26.48 35.59-36.72 55.59a32.35 32.35 0 0 0 0 29.19C89.71 376.41 197.07 448 320 448c26.91 0 52.87-4 77.89-10.46L346 397.39a144.13 144.13 0 0 1-26 2.61zm313.82 58.1l-110.55-85.44a331.25 331.25 0 0 0 81.25-102.07 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64a308.15 308.15 0 0 0-147.32 37.7L45.46 3.37A16 16 0 0 0 23 6.18L3.37 31.45A16 16 0 0 0 6.18 53.9l588.36 454.73a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zm-183.72-142l-39.3-30.38A94.75 94.75 0 0 0 416 256a94.76 94.76 0 0 0-121.31-92.21A47.65 47.65 0 0 1 304 192a46.64 46.64 0 0 1-1.54 10l-73.61-56.89A142.31 142.31 0 0 1 320 112a143.92 143.92 0 0 1 144 144c0 21.63-5.29 41.79-13.9 60.11z'/%3E%3C/svg%3E");
  --sa11y-dismiss-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7l-87.5-68.6c.5-1.7 .7-3.5 .7-5.4c0-27.6-11-54.1-30.5-73.7L512 320c-20.5-20.5-32-48.3-32-77.3V208c0-77.4-55-142-128-156.8V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V51.2c-42.6 8.6-79 34.2-102 69.3L38.8 5.1zM160 242.7c0 29-11.5 56.8-32 77.3l-1.5 1.5C107 341 96 367.5 96 395.2c0 11.5 9.3 20.8 20.8 20.8H406.2L160 222.1v20.7zM384 448H320 256c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7s18.7-28.3 18.7-45.3z'/%3E%3C/svg%3E");
  --sa11y-low-vision-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zM223 149.5c48.6-44.3 123-50.8 179.3-11.7c60.8 42.4 78.9 123.2 44.2 186.9L408 294.5c8.4-19.3 10.6-41.4 4.8-63.3c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3c0 10.2-2.4 19.8-6.6 28.3L223 149.5zm223.1 298L83.1 161.5c-11 14.4-20.5 28.7-28.4 42.2l339 265.7c18.7-5.5 36.2-13 52.6-21.8zM34.5 268.3c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c3.1 0 6.1-.1 9.2-.2L33.1 247.8c-1.8 6.8-1.3 14 1.4 20.5z'/%3E%3C/svg%3E");
  /* i18n: utility to flip icons for transform: scaleX(y) */
  --sa11y-icon-direction: 1;
  --sa11y-float-rtl: right;
}

[dir=rtl] {
  --sa11y-icon-direction: -1;
  --sa11y-float-rtl: left;
}

/* ************************************* */
/*             Light theme               */
/* ************************************* */
html,
html[data-sa11y-theme=light] {
  --sa11y-red-text: #d30017;
  --sa11y-yellow-text: #966f0d;
  --sa11y-panel-badge: #e9e9e9;
  --sa11y-panel-outline-hover: rgba(233, 233, 233, .8);
  --sa11y-panel-scrollable: rgba(233, 233, 233, .7);
  --sa11y-panel-primary: #333;
  --sa11y-panel-bg: #fff;
  --sa11y-panel-bg-secondary: #f6f6f6;
  --sa11y-panel-bg-splitter: #d7d7d7;
  --sa11y-panel-error: #d30017;
  --sa11y-panel-secondary: #4d4d4d;
  --sa11y-panel-secondary-hover: #0077c8;
  --sa11y-panel-toggle-active: #c6c6c6;
  --sa11y-setting-switch-bg-on: #21b5ff;
  --sa11y-setting-switch-bg-off: #959595;
  --sa11y-hyperlink: #004c9b;
  --sa11y-shortcut-hover: #e8e8e8;
  --sa11y-button-outline: #949494;
}

/* ************************************* */
/*             Dark theme                */
/* ************************************* */
html[data-sa11y-theme=dark] {
  --sa11y-red-text: #fe5b5f;
  --sa11y-yellow-text: #ffc800;
  --sa11y-panel-badge: #3500c4;
  --sa11y-panel-outline-hover: rgba(53, 0, 196, .8);
  --sa11y-panel-scrollable: rgba(53, 0, 196, .6);
  --sa11y-panel-primary: #dde8ff;
  --sa11y-panel-bg: #0a2051;
  --sa11y-panel-bg-secondary: #072c7c;
  --sa11y-panel-bg-splitter: #0041c9;
  --sa11y-panel-error: #f00;
  --sa11y-panel-secondary: #a3c1ff;
  --sa11y-panel-secondary-hover: rgb(0 0 0 / 40%);
  --sa11y-panel-toggle-active: #000;
  --sa11y-setting-switch-bg-on: #21b5ff;
  --sa11y-setting-switch-bg-off: #bfbfbf;
  --sa11y-hyperlink: #64b2ff;
  --sa11y-shortcut-hover: #093698;
  --sa11y-button-outline: #005dff;
}

@media (prefers-color-scheme: dark) {
  html,
  html[data-sa11y-theme=dark] {
    --sa11y-red-text: #fe5b5f;
    --sa11y-yellow-text: #ffc800;
    --sa11y-panel-badge: #3500c4;
    --sa11y-panel-outline-hover: rgba(53, 0, 196, .8);
    --sa11y-panel-scrollable: rgba(53, 0, 196, .6);
    --sa11y-panel-primary: #dde8ff;
    --sa11y-panel-bg: #0a2051;
    --sa11y-panel-bg-secondary: #072c7c;
    --sa11y-panel-bg-splitter: #0041c9;
    --sa11y-panel-error: #f00;
    --sa11y-panel-secondary: #a3c1ff;
    --sa11y-panel-secondary-hover: rgb(0 0 0 / 40%);
    --sa11y-panel-toggle-active: #000;
    --sa11y-setting-switch-bg-on: #21b5ff;
    --sa11y-setting-switch-bg-off: #bfbfbf;
    --sa11y-hyperlink: #64b2ff;
    --sa11y-shortcut-hover: #093698;
    --sa11y-button-outline: #005dff;
  }
}
/* **********************************************************/
/*  These CSS utilities are injected into every shadow DOM. */
/*      Using data attributes to increase specificity.      */
/* ******************************************************** */
[data-sa11y-overflow] {
  overflow: auto !important;
}

[data-sa11y-clone-image-text] {
  display: none !important;
}

[data-sa11y-readability-period] {
  position: absolute !important;
  display: block !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  white-space: nowrap !important;
  border: 0 !important;
  -webkit-clip-path: inset(50%) !important;
          clip-path: inset(50%) !important;
}

/* ************************************* */
/*    Links, text, and image borders     */
/* ************************************* */
[data-sa11y-error] {
  outline: 5px solid var(--sa11y-error) !important;
}

[data-sa11y-warning] {
  outline: 5px solid var(--sa11y-warning) !important;
}

[data-sa11y-good] {
  outline: 5px solid var(--sa11y-good) !important;
}

[data-sa11y-error-inline] {
  color: var(--sa11y-error-text) !important;
  background-color: var(--sa11y-error) !important;
  border-color: transparent !important;
  border-radius: 0.25em !important;
  box-shadow: 0 0 0 4px var(--sa11y-error) !important;
}

[data-sa11y-warning-inline] {
  color: var(--sa11y-warning-text) !important;
  background-color: var(--sa11y-warning) !important;
  border-color: transparent !important;
  border-radius: 0.25em !important;
  box-shadow: 0 0 0 4px var(--sa11y-warning) !important;
}

/* *************************************************** */
/*  Pulsing border: https://codepen.io/olam/pen/zcqea  */
/* *************************************************** */
[data-sa11y-pulse-border] {
  outline: 5px solid var(--sa11y-focus-color) !important;
  box-shadow: 0;
  animation: pulse 2s 3;
}
[data-sa11y-pulse-border]:hover, [data-sa11y-pulse-border]:focus {
  animation: none;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 5px var(--sa11y-focus-color);
  }
  70% {
    box-shadow: 0 0 0 12px var(--sa11y-pulse-color);
  }
  100% {
    box-shadow: 0 0 0 5px var(--sa11y-pulse-color);
  }
}
@media (prefers-reduced-motion: reduce) {
  [data-sa11y-pulse-border] {
    animation: none !important;
  }
}
/* ****************************************************** */
/*   High contrast mode should preserve outlines colours  */
/* ****************************************************** */
@media (forced-colors: active) {
  [data-sa11y-error],
  [data-sa11y-warning],
  [data-sa11y-good],
  [data-sa11y-error-inline],
  [data-sa11y-warning-inline],
  [data-sa11y-pulse-border] {
    forced-color-adjust: none;
  }
}
[data-sa11y-overflow] {
  overflow: auto !important;
}

[data-sa11y-clone-image-text] {
  display: none !important;
}

[data-sa11y-readability-period] {
  position: absolute !important;
  display: block !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  white-space: nowrap !important;
  border: 0 !important;
  -webkit-clip-path: inset(50%) !important;
          clip-path: inset(50%) !important;
}

/* ************************************* */
/*    Links, text, and image borders     */
/* ************************************* */
[data-sa11y-error] {
  outline: 5px solid var(--sa11y-error) !important;
}

[data-sa11y-warning] {
  outline: 5px solid var(--sa11y-warning) !important;
}

[data-sa11y-good] {
  outline: 5px solid var(--sa11y-good) !important;
}

[data-sa11y-error-inline] {
  color: var(--sa11y-error-text) !important;
  background-color: var(--sa11y-error) !important;
  border-color: transparent !important;
  border-radius: 0.25em !important;
  box-shadow: 0 0 0 4px var(--sa11y-error) !important;
}

[data-sa11y-warning-inline] {
  color: var(--sa11y-warning-text) !important;
  background-color: var(--sa11y-warning) !important;
  border-color: transparent !important;
  border-radius: 0.25em !important;
  box-shadow: 0 0 0 4px var(--sa11y-warning) !important;
}

/* *************************************************** */
/*  Pulsing border: https://codepen.io/olam/pen/zcqea  */
/* *************************************************** */
[data-sa11y-pulse-border] {
  outline: 5px solid var(--sa11y-focus-color) !important;
  box-shadow: 0;
  animation: pulse 2s 3;
}
[data-sa11y-pulse-border]:hover, [data-sa11y-pulse-border]:focus {
  animation: none;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 5px var(--sa11y-focus-color);
  }
  70% {
    box-shadow: 0 0 0 12px var(--sa11y-pulse-color);
  }
  100% {
    box-shadow: 0 0 0 5px var(--sa11y-pulse-color);
  }
}
@media (prefers-reduced-motion: reduce) {
  [data-sa11y-pulse-border] {
    animation: none !important;
  }
}
/* ****************************************************** */
/*   High contrast mode should preserve outlines colours  */
/* ****************************************************** */
@media (forced-colors: active) {
  [data-sa11y-error],
  [data-sa11y-warning],
  [data-sa11y-good],
  [data-sa11y-error-inline],
  [data-sa11y-warning-inline],
  [data-sa11y-pulse-border] {
    forced-color-adjust: none;
  }
}
/* *********************************************************************************** */
/*           Colour vision deficiency filters created using DaltonLens library.        */
/*  https: //github.com/DaltonLens/libDaltonLens/blob/master/svg/cvd_svg_filters.html  */
/* *********************************************************************************** */
#sa11y-colour-filters,
#sa11y-svg-filters {
  /* Performance: Make SVG fit the screen, rather than entire viewport. */
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  z-index: -99999 !important;
  width: 100vh !important;
  height: 100vh !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  line-height: 0 !important;
  transform: translate3d(0, 0, 0) !important;
  /* Supposedly enables hardware acceleration to help performance. */
  transform-style: preserve-3d !important;
}

[data-sa11y-filter=protanopia] *:not(sa11y-control-panel, sa11y-dismiss-tooltip) {
  filter: url("#sa11y-protanopia");
}

[data-sa11y-filter=deuteranopia] *:not(sa11y-control-panel, sa11y-dismiss-tooltip) {
  filter: url("#sa11y-deuteranopia");
}

[data-sa11y-filter=tritanopia] *:not(sa11y-control-panel, sa11y-dismiss-tooltip) {
  filter: url("#sa11y-tritanopia");
}

[data-sa11y-filter=monochromacy] *:not(sa11y-control-panel, sa11y-dismiss-tooltip) {
  filter: url("#sa11y-monochromacy");
}