@charset "UTF-8";
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
   * Remove default margin.
   */
body {
  margin: 0;
}

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none;
}

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * Improve readability when focused and also mouse hovered in all browsers.
   */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold;
}

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic;
}

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000;
}

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0;
}

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px;
}

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto;
}

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible;
}

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none;
}

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal;
}

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
   *    (include `-moz` to future-proof).
   */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * Define consistent border, margin, and padding.
   */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto;
}

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold;
}

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
:global {
  /*******************************************************************************
   * Headings
   ******************************************************************************/
  /*******************************************************************************
   * Elements
   ******************************************************************************/
  /*******************************************************************************
   * Paragraph a.k.a "body" styles
   ******************************************************************************/
}

:global * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

:global h1,
:global h2,
:global h3,
:global h4,
:global h5,
:global h6,
:global p {
  margin-top: 0;
  margin-bottom: 0;
}

:global figure {
  margin: 0;
}

:global ol,
:global ul {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style-position: outside;
}

:global html {
  font-size: 62.5%;
}

:global body {
  background: #ffffff;
  color: #171d29;
}

:global svg {
  fill: currentColor;
}

:global body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
  font-size: 1.4rem;
  line-height: 1.42;
  font-weight: 400;
}

:global h1 {
  font: 600 4.2rem/1.14 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h2 {
  font: 600 3.6rem/1.11 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h3 {
  font: 600 2.8rem/1.14 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h4 {
  font: 600 2rem/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h5 {
  font: 600 1.6rem/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h6 {
  font: 600 1.2rem/1.33 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
  text-transform: uppercase;
}

:global a {
  color: #0059ff;
  text-decoration: underline;
}

:global a:hover {
  text-decoration: none;
  color: #0047cc;
}

:global ul ul,
:global ul ol,
:global ol ul,
:global ol ol {
  margin-left: 1.6rem;
}

:global p a {
  font-size: 1.4rem;
  line-height: 1.42;
  font-weight: 400;
  color: #0059ff;
  text-decoration: underline;
  font-weight: 500;
}

:global p a:hover {
  text-decoration: none;
  color: #0047cc;
}

.u-heading-margin {
  margin: 0.8em 0 0.4em 0;
}

.u-block-margin {
  margin: 0.8em 0;
}

.u-screen-reader {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
/**
 * Note that there is a `.tooltip` in `shared-components` so we have to have a
 * different name here otherwise they will conflict.
 *
 * 1. `left` and `top` positions are set via JS in the component.
 */
.tooltip-component {
  border: 0.1rem solid;
  border-radius: 4px;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  padding: 0.4rem 0.8rem;
  position: absolute;
  max-width: 37rem;
  z-index: 110;
  line-height: normal;
  font-size: 1.4rem;
}

.tooltip-component--theme-light {
  background-color: #ffffff;
  border-color: #d5dce2;
  color: #364255;
}

.tooltip-component--theme-dark {
  background-color: #364255;
  border-color: #364255;
  color: #ffffff;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.tag-select {
  width: 100%;
  max-width: 34.2rem;
  position: relative;
  flex: 1;
}

.tag-select--no-max-width {
  max-width: none;
}

.tag-select__search-wrapper {
  position: relative;
}

.tag-select__helper-text-wrapper {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.tag-select__helper-text-wrapper--bottom-left {
  margin-top: 0.4rem;
}

.tag-select__helper-text-wrapper--bottom-right {
  margin-top: 0.4rem;
  justify-content: flex-end;
}

.tag-select__label {
  display: inline-block;
  margin-bottom: 0.6rem;
  color: #171d29;
  font-weight: bold;
  letter-spacing: -0.06rem;
}

.tag-select__label:empty {
  display: none;
}

.tag-select__label--font-normal {
  font-weight: normal;
}

.tag-select__added-tags-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0.4rem;
  gap: 0.4rem;
}

.tag-select__added-tags-list-item {
  list-style-type: none;
  max-width: 100%;
  overflow: hidden;
}

.tag-select__added-tag {
  display: flex;
  align-items: center;
  padding: 0.3rem 0.4rem;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
}

.tag-select__added-tag-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 0.4rem;
}

.tag-select__added-tag-remove {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  background: none;
  height: 2rem;
  width: 2rem;
  padding: 0;
  border: 0;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.table {
  /* 
      1. Make sure the content in the table rows and the content in the footer
         line-up correctly.
  */
}

.table__filters {
  margin-bottom: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}

.table__filters__section {
  display: flex;
  gap: 1.6rem;
}

.table__table, .pf-v5-c-table[class*=pf-m-grid] {
  width: 100%;
  background: #ffffff;
  border-radius: 4px;
  border: 1px solid #d5dce2;
  border-bottom: 0;
}

.table__head, .pf-v5-c-table[class*=pf-m-grid] thead, .pf-v5-c-table[class*=pf-m-grid] thead th {
  background-color: #f9fafb;
  text-transform: uppercase;
  color: #364255;
  border-bottom: 1px solid #d5dce2;
  font-size: 1.2rem;
}

.table__column-head, .pf-v5-c-table[class*=pf-m-grid] thead th {
  padding: 1.1rem 0 1.1rem 1.6rem;
  text-align: left;
  white-space: nowrap;
}

.table__column-head-sort {
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  vertical-align: middle;
  line-height: 1.6rem;
  margin: -0.2rem 0 0 0.4rem;
}

.table__column-head-sort path {
  fill: #171d29;
}

.table__column-head-sort--not-sorted {
  opacity: 0;
}

.table__column-head:focus .table__column-head-sort--not-sorted, .pf-v5-c-table[class*=pf-m-grid] thead th:focus .table__column-head-sort--not-sorted, .table__column-head:hover .table__column-head-sort--not-sorted, .pf-v5-c-table[class*=pf-m-grid] thead th:hover .table__column-head-sort--not-sorted {
  opacity: 1;
}

.table__column-head:focus .table__column-head-sort--not-sorted path, .pf-v5-c-table[class*=pf-m-grid] thead th:focus .table__column-head-sort--not-sorted path, .table__column-head:hover .table__column-head-sort--not-sorted path, .pf-v5-c-table[class*=pf-m-grid] thead th:hover .table__column-head-sort--not-sorted path {
  fill: #97a9b7;
}

.table__row, .pf-v5-c-table[class*=pf-m-grid] tr:not(:last-child) {
  padding: 2.1rem;
  border-bottom: 1px solid #d5dce2;
}

.table__row:hover, .pf-v5-c-table[class*=pf-m-grid] tr:hover:not(:last-child) {
  background: #e5eeff;
}

.table__row--hover:hover {
  cursor: pointer;
}

.table__row--small {
  height: 4.8rem;
}

.table__row--medium {
  height: 6.4rem;
}

.table__row-cell, .pf-v5-c-table[class*=pf-m-grid] tr:not(:last-child) td {
  padding-left: 1.6rem;
}

.table__row-cell:last-of-type, .pf-v5-c-table[class*=pf-m-grid] tr:not(:last-child) td:last-of-type {
  padding-right: 1.6rem;
}

.table__row-cell--expandable {
  padding-left: 0.8rem;
}

.table__row-cell--nested {
  background-color: #f9fafb;
}

.table__row-cell--nested:first-of-type {
  padding-left: 3.6rem;
}

.table__row-cell-wrapper {
  display: flex;
  align-items: center;
  gap: 4px;
}

.table__footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  background: #f9fafb;
  padding: 0.8rem;
  padding-left: 1.6rem;
  border: 1px solid #d5dce2;
  border-top: 0;
  border-radius: 0 0 4px 4px;
}

.table__footer--empty {
  background: transparent;
  padding: 4px;
}

.table__page-container {
  display: flex;
  align-items: center;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.button[data-cy=next-page] {
  margin-left: 0.8rem;
}

.wrapper {
  width: 12rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.page-size {
  max-width: 7rem;
}

.page-size__dropdown {
  min-width: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.pagination__button {
  line-height: 1;
  width: 4rem;
  height: 4rem;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  appearance: none;
  background: #ffffff;
  color: #171d29;
  border: 1px solid #d5dce2;
  /* stylelint-disable selector-max-specificity */
  /* stylelint-enable selector-max-specificity */
}

.pagination__button:focus {
  z-index: 10;
}

.pagination__button:hover:not(:disabled), .pagination__button--selected {
  background: #e5eeff;
  color: #0047cc;
}

.pagination__button:disabled svg > path {
  fill: #d5dce2;
}

.pagination__button + .pagination__button {
  border-left: 0;
}

.pagination__button--previous {
  border-top-left-radius: 0.4rem;
  border-bottom-left-radius: 0.4rem;
}

.pagination__button--next {
  border-top-right-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
}

.pagination__button-icon {
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.empty__container {
  padding: 6.4rem 0;
}

.empty__heading {
  text-align: center;
  font-size: 2rem;
  font-weight: 800;
}

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
   * Remove default margin.
   */
body {
  margin: 0;
}

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none;
}

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * Improve readability when focused and also mouse hovered in all browsers.
   */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold;
}

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic;
}

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000;
}

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0;
}

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px;
}

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto;
}

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible;
}

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none;
}

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal;
}

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
   *    (include `-moz` to future-proof).
   */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * Define consistent border, margin, and padding.
   */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto;
}

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold;
}

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
:global {
  /*******************************************************************************
   * Headings
   ******************************************************************************/
  /*******************************************************************************
   * Elements
   ******************************************************************************/
  /*******************************************************************************
   * Paragraph a.k.a "body" styles
   ******************************************************************************/
}

:global * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

:global h1,
:global h2,
:global h3,
:global h4,
:global h5,
:global h6,
:global p {
  margin-top: 0;
  margin-bottom: 0;
}

:global figure {
  margin: 0;
}

:global ol,
:global ul {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style-position: outside;
}

:global html {
  font-size: 62.5%;
}

:global body {
  background: #ffffff;
  color: #171d29;
}

:global svg {
  fill: currentColor;
}

:global body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
  font-size: 1.4rem;
  line-height: 1.42;
  font-weight: 400;
}

:global h1 {
  font: 600 4.2rem/1.14 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h2 {
  font: 600 3.6rem/1.11 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h3 {
  font: 600 2.8rem/1.14 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h4 {
  font: 600 2rem/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h5 {
  font: 600 1.6rem/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

:global h6 {
  font: 600 1.2rem/1.33 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
  text-transform: uppercase;
}

:global a {
  color: #0059ff;
  text-decoration: underline;
}

:global a:hover {
  text-decoration: none;
  color: #0047cc;
}

:global ul ul,
:global ul ol,
:global ol ul,
:global ol ol {
  margin-left: 1.6rem;
}

:global p a {
  font-size: 1.4rem;
  line-height: 1.42;
  font-weight: 400;
  color: #0059ff;
  text-decoration: underline;
  font-weight: 500;
}

:global p a:hover {
  text-decoration: none;
  color: #0047cc;
}

.u-heading-margin {
  margin: 0.8em 0 0.4em 0;
}

.u-block-margin {
  margin: 0.8em 0;
}

.u-screen-reader {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.u-heading-margin {
  margin: 0.8em 0 0.4em 0;
}

.u-block-margin {
  margin: 0.8em 0;
}

.u-screen-reader {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
  font-size: 1.4rem;
  line-height: 1.42;
  font-weight: 400;
}

/*******************************************************************************
 * Headings
 ******************************************************************************/
h1 {
  font: 600 4.2rem/1.14 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

h2 {
  font: 600 3.6rem/1.11 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

h3 {
  font: 600 2.8rem/1.14 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

h4 {
  font: 600 2rem/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

h5 {
  font: 600 1.6rem/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
}

h6 {
  font: 600 1.2rem/1.33 -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", ‘Cantarell’, ‘Arial’, sans-serif;
  text-transform: uppercase;
}

/*******************************************************************************
 * Elements
 ******************************************************************************/
a {
  color: #0059ff;
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
  color: #0047cc;
}

ul ul,
ul ol,
ol ul,
ol ol {
  margin-left: 1.6rem;
}

/*******************************************************************************
 * Paragraph a.k.a "body" styles
 ******************************************************************************/
p a {
  font-size: 1.4rem;
  line-height: 1.42;
  font-weight: 400;
  color: #0059ff;
  text-decoration: underline;
  font-weight: 500;
}

p a:hover {
  text-decoration: none;
  color: #0047cc;
}

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
   * Remove default margin.
   */
body {
  margin: 0;
}

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none;
}

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * Improve readability when focused and also mouse hovered in all browsers.
   */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold;
}

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic;
}

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000;
}

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0;
}

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px;
}

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto;
}

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible;
}

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none;
}

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal;
}

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
   *    (include `-moz` to future-proof).
   */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * Define consistent border, margin, and padding.
   */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto;
}

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold;
}

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

* {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin-top: 0;
  margin-bottom: 0;
}

figure {
  margin: 0;
}

ol,
ul {
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  list-style-position: outside;
}

html {
  font-size: 62.5%;
}

body {
  background: #ffffff;
  color: #171d29;
}

svg {
  fill: currentColor;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.status-pill {
  border-radius: 2px;
  line-height: 1;
  padding: 0.2rem 0.8rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  cursor: default;
  position: relative;
}

.status-pill__label {
  font-size: 1.2rem;
  font-weight: 700;
  text-transform: uppercase;
}

.status-pill__dot {
  display: inline-block;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
}

.status-pill--theme-neutral, .status-pill--theme-grey {
  background-color: #d5dce2;
  color: #364255;
}

.status-pill--theme-neutral .status-pill__dot, .status-pill--theme-grey .status-pill__dot {
  background: #97a9b7;
}

.status-pill--theme-primary, .status-pill--theme-blue {
  background-color: #ccddff;
  color: #003599;
}

.status-pill--theme-primary .status-pill__dot, .status-pill--theme-blue .status-pill__dot {
  background: #0059ff;
}

.status-pill--theme-secondary, .status-pill--theme-purple {
  background-color: #dfd6ff;
  color: #3a2099;
}

.status-pill--theme-secondary .status-pill__dot, .status-pill--theme-purple .status-pill__dot {
  background: #6136ff;
}

.status-pill--theme-yellow {
  background-color: #fff2cc;
  color: #664c00;
}

.status-pill--theme-yellow .status-pill__dot {
  background: #ffbe00;
}

.status-pill--theme-green {
  background-color: #cce4cc;
  color: #095510;
}

.status-pill--theme-green .status-pill__dot {
  background: #007b00;
}

.status-pill--theme-red {
  background-color: #f8d6ce;
  color: #8e2b17;
}

.status-pill--theme-red .status-pill__dot {
  background: #8e2b17;
}

.status-pill--no-dot {
  gap: 0;
}

.status-pill--no-dot .status-pill__dot {
  width: 0;
}

.status-pill--no-padding {
  padding: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.overlay {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(23, 29, 41, 0.5);
  transition: background-color 0.4s ease;
  z-index: 110;
}

.sidebar {
  background-color: #ffffff;
  width: 100%;
  flex-direction: column;
  max-width: 50rem;
}

.sidebar--static {
  border-right: 0.1rem solid #ebeef1;
  display: flex;
  height: 100%;
}

.sidebar--flyout {
  bottom: 0;
  display: flex;
  position: absolute;
  right: 0;
  top: 0;
}

.sidebar-level {
  height: 100%;
  overflow: hidden;
}

.sidebar-level__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.sidebar-level__inner--forward {
  animation: slide-in-from-right 0.4s ease;
}

.sidebar-level__inner--backward {
  animation: slide-in-from-left 0.4s ease;
}

.sidebar-level__search-wrapper {
  padding: 16px 24px;
}

@keyframes slide-in-from-left {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slide-in-from-right {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.level-header {
  padding: 3.2rem 1.6rem 2.4rem;
  display: flex;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 10;
  min-height: 9.6rem;
  background-color: #fcfcfd;
  border-bottom: solid 0.1rem #ebeef1;
}

.level-header--clickable {
  cursor: pointer;
}

.level-header__icon-wrapper {
  fill: #ffffff;
  transition: transform 0.2s ease;
  margin-right: 1rem;
}

.level-header__title {
  color: #364255;
  font-size: 1.8rem;
  line-height: 1.33;
  letter-spacing: 0.02rem;
  font-weight: 600;
}

.level-header__description {
  color: #364255;
  font-size: 1.2rem;
  line-height: 1.33;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.level-footer {
  align-items: center;
  background-color: #fcfcfd;
  border-top: solid 0.1rem #ebeef1;
  display: flex;
  gap: 1.6rem;
  justify-content: center;
  min-height: 9.6rem;
  padding: 3.2rem 1.6rem 2.4rem;
  width: 100%;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.level-content {
  flex: 1;
  overflow-y: auto;
}

.level-content--padded {
  padding: 16px;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.sidebar-sub-menu-search-results-text {
  margin-bottom: 16px;
  text-align: center;
}

.sidebar-sub-menu__menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-sub-menu-section {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 20px;
}

.sidebar-sub-menu-section__heading {
  color: #647386;
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: -0.2px;
  line-height: 1.6rem;
  margin-bottom: 0.4rem;
  text-transform: uppercase;
}

.sidebar-sub-menu-item {
  position: relative;
}

.sidebar-sub-menu-item__button {
  align-items: center;
  background: none;
  border: 0;
  display: flex;
  justify-content: space-between;
  padding: 8px 12px 8px 8px;
  text-align: left;
  width: 100%;
}

.sidebar-sub-menu-item__button:focus, .sidebar-sub-menu-item__button:hover {
  background: #f2f6ff;
}

.sidebar-sub-menu-item__content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-right: 16px;
  flex-grow: 1;
}

.sidebar-sub-menu-item__content {
  display: flex;
  align-items: center;
}

.sidebar-sub-menu-item__icon-wrapper {
  align-items: center;
  background-color: #ebeef1;
  display: flex;
  height: 20px;
  justify-content: center;
  margin-right: 8px;
  width: 20px;
}

.sidebar-sub-menu-item__text-content {
  display: block;
}

.sidebar-sub-menu-item__name {
  display: block;
  font-weight: 700;
  line-height: 1.43;
  color: #364255;
}

.sidebar-sub-menu-item__description {
  font-size: 1.2rem;
  line-height: 1.33;
  color: #8394a5;
}

.sidebar-sub-menu-show-more-button {
  display: flex;
  justify-content: center;
  margin: 16px 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.sidebar-sub-menu-no-more-results {
  color: #647386;
  padding: 44px 24px 120px;
  text-align: center;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.sidebar-menu-search-results-text {
  margin-bottom: 16px;
  text-align: center;
}

.sidebar-menu {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sidebar-menu-item {
  position: relative;
}

.sidebar-menu-item::before {
  content: "";
  bottom: 0;
  left: 12px;
  position: absolute;
  right: 12px;
  border-bottom: solid 1px #d5dce2;
}

.sidebar-menu-item__button {
  align-items: center;
  background: none;
  border: 0;
  display: flex;
  justify-content: space-between;
  padding: 10px 24px;
  text-align: left;
  width: 100%;
}

.sidebar-menu-item__button:focus, .sidebar-menu-item__button:hover {
  background: #e5eeff;
}

.sidebar-menu-item__label {
  display: block;
  font-weight: 700;
  line-height: 1.43;
  color: #364255;
}

.sidebar-menu-item__description {
  font-size: 1.2rem;
  line-height: 1.33;
  color: #8394a5;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.sidebar-close-button {
  border-radius: 100%;
  position: absolute;
  left: -5.6rem;
  top: 1.5rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.dropdown-item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0 1.6rem;
  height: 3.2rem;
  transition: background-color 0.2s ease, color 0.2s ease;
  overflow: hidden;
  width: 100%;
}

.dropdown-item__label-container {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dropdown-item__label-container-inner {
  display: flex;
  align-items: center;
}

.dropdown-item__label {
  display: block;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dropdown-item__label--comp {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.dropdown-item__label-subtext {
  color: #647386;
  font-size: 1.2rem;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dropdown-item__label-text {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.dropdown-item__icon {
  display: inline-block;
  vertical-align: middle;
  fill: #171d29;
  flex-shrink: 0;
}

.dropdown-item__color {
  background-image: url("../../../assets/backgrounds/transparent.svg");
  border: 1px solid #d5dce2;
  border-radius: 100%;
  height: 1.6rem;
  width: 1.6rem;
  flex-shrink: 0;
}

.dropdown-item:not(.dropdown-item--disabled):not(.dropdown-item--not-clickable):not(.dropdown-item--section) {
  cursor: pointer;
}

.dropdown-item:not(.dropdown-item--disabled):not(.dropdown-item--not-clickable):not(.dropdown-item--section):hover, .dropdown-item:not(.dropdown-item--disabled):not(.dropdown-item--not-clickable):not(.dropdown-item--section):focus {
  background-color: #e5eeff;
  color: #0047cc;
  outline: none;
}

.dropdown-item:not(.dropdown-item--disabled):not(.dropdown-item--not-clickable):not(.dropdown-item--section):hover .dropdown-item__icon, .dropdown-item:not(.dropdown-item--disabled):not(.dropdown-item--not-clickable):not(.dropdown-item--section):focus .dropdown-item__icon {
  fill: #0047cc;
}

.dropdown-item--selected {
  background-color: #002366;
  color: #ffffff;
}

.dropdown-item--selected:hover, .dropdown-item--selected:focus {
  background-color: #002366;
  color: #ffffff;
}

.dropdown-item--selected .dropdown-item__label-subtext {
  color: #b5c2cc;
}

.dropdown-item--selected .dropdown-item__icon {
  fill: #ffffff;
}

.dropdown-item--selected .dropdown-item__label--comp svg {
  fill: #ffffff;
}

.dropdown-item--selected .dropdown-item__label--comp:hover svg {
  fill: #171d29;
}

.dropdown-item--disabled {
  color: #b5c2cc;
  cursor: not-allowed;
}

.dropdown-item--has-subtext {
  height: 4.8rem;
}

.dropdown-item--icon-right-align {
  flex-direction: row-reverse;
}

.dropdown-item--section-divider {
  border-top: 1px solid #d5dce2;
}

.dropdown-item--not-clickable {
  cursor: default;
}

.dropdown-item--not-clickable:focus {
  outline: none;
}

.dropdown-item--section {
  margin-top: 0.4rem;
  padding: 0 0.8rem;
  height: 2.8rem;
  color: #97a9b7;
  font-size: 1rem;
  font-weight: 900;
  text-transform: uppercase;
  border-top: 1px solid #d5dce2;
  user-select: none;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
}

.dropdown-item--section:first-of-type {
  border: none;
  margin-top: 0;
}

.dropdown-item--section-no-header {
  justify-content: flex-end;
}

.dropdown-item--section-header {
  align-items: flex-end;
  display: flex;
  height: auto;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.dropdown-filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.4rem;
  background-color: #f9fafb;
  padding: 0.4rem 0.8rem;
  margin-top: -0.8rem;
  margin-bottom: 0.4rem;
  position: relative;
}

.dropdown-filter--no-label {
  flex-direction: row-reverse;
}

.dropdown-filter-label {
  color: #647386;
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: 600;
}

.dropdown-filter-cta-label {
  margin-right: 0.4rem;
}

.dropdown-filter-cta svg {
  transition: transform 0.2s;
  transform: rotate(90deg);
}

.dropdown-filter-cta--open svg {
  transform: rotate(-90deg);
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.dropdown {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 0.4rem;
  width: 100%;
  min-width: 20rem;
  max-height: 30.6rem;
  background-color: #ffffff;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  visibility: hidden;
  transition: opacity 0.15s ease;
  opacity: 0;
  z-index: 20;
  padding: 0.8rem 0;
}

.dropdown__list-wrapper {
  overflow-y: auto;
}

.dropdown__list {
  margin-left: 0;
}

.dropdown__list--pinned {
  overflow-y: visible;
  border-top: 1px solid #d5dce2;
  padding-top: 0.8rem;
  margin-top: 0.8rem;
}

.dropdown__empty {
  color: #647386;
  font-size: 1.4rem;
  text-align: center;
  min-height: 4.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.dropdown__global-buttons {
  display: flex;
  justify-content: flex-end;
  padding: 0.8rem;
}

.dropdown__global-button {
  background: none;
  border: 0;
  color: #0059ff;
  text-decoration: underline;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
  font-size: 1.2rem;
  font-weight: 600;
}

.dropdown--restrict-width {
  width: auto;
}

.dropdown--contain-width {
  left: 0;
  right: 0;
}

.dropdown--above {
  top: inherit;
  bottom: 100%;
  margin-bottom: 0.4rem;
}

.dropdown--right {
  left: auto;
  right: 0;
}

.dropdown--is-filter {
  left: 100%;
  transform: translateX(-100%) translateX(-0.8rem);
}

.dropdown--open {
  visibility: visible;
  opacity: 1;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.display__value-wrapper {
  align-items: center;
  display: flex;
}

.display__value {
  padding-right: 2.8rem;
  color: #b5c2cc;
  cursor: pointer;
  user-select: none;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
}

.display__value::after {
  content: "";
  background: url("../../../assets/icons/unfold.svg") no-repeat #ffffff;
  background-position: center;
  bottom: 0.2rem;
  height: calc(100% - 0.4rem);
  position: absolute;
  right: 1.2rem;
  top: 0.2rem;
  width: 1.2rem;
}

.display__value--selection {
  color: #171d29;
}

.display__button {
  display: inline-block;
}

.display__button span {
  white-space: nowrap;
}

.display__button--restrict-width span {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: 12rem;
}

.display__item-label-text {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.display__item-icon {
  display: inline-block;
  vertical-align: middle;
  fill: #171d29;
  flex-shrink: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.page-wrapper__background {
  background-color: #fcfcfd;
  min-height: calc(100vh - 6.6rem);
}

.page-wrapper__background--no-padding-top {
  padding-top: 0;
}

.page-wrapper__background--no-auth-u-i {
  min-height: 100vh;
}

.page-wrapper__content {
  margin: 0 auto;
  max-width: 110rem;
  width: 100%;
  padding: 3.2rem 0;
}

.notification-list {
  bottom: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  left: 1.6rem;
  list-style: none;
  position: fixed;
  z-index: 999;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.notification {
  opacity: 0;
  transform: translateX(-150%);
  transition: transform 0.3s ease-out, opacity 0.2s ease;
  position: relative;
  z-index: 999;
}

.notification__container {
  display: inline-flex;
  padding: 1.2rem 1.6rem;
  align-items: center;
  font-weight: 900;
  border-radius: 4px;
}

.notification__label {
  font-weight: bold;
  margin-right: auto;
}

.notification__link {
  display: inline-block;
  margin-left: 1.6rem;
  font-weight: 500;
  color: #4d2bcc;
}

.notification__icon {
  margin-left: 8rem;
  fill: #4d2bcc;
  transition: fill 0.25s ease;
  cursor: pointer;
}

.notification__icon:hover {
  fill: #a086ff;
}

.notification--theme-info .notification__container {
  background-color: #dfd6ff;
  color: #4d2bcc;
}

.notification--theme-info .notification__link {
  color: #4d2bcc;
}

.notification--theme-info .notification__icon {
  fill: #4d2bcc;
}

.notification--theme-info .notification__icon:hover {
  fill: #a086ff;
}

.notification--theme-success .notification__container {
  background-color: #cce4cc;
  color: #056808;
}

.notification--theme-success .notification__link {
  color: #056808;
}

.notification--theme-success .notification__icon {
  fill: #056808;
}

.notification--theme-success .notification__icon:hover {
  fill: #66af66;
}

.notification--theme-failure .notification__container {
  background-color: #f8d6ce;
  color: #b63012;
}

.notification--theme-failure .notification__link {
  color: #b63012;
}

.notification--theme-failure .notification__icon {
  fill: #b63012;
}

.notification--theme-failure .notification__icon:hover {
  fill: #eb856d;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.navigation-sidebar {
  display: flex;
  justify-content: flex-end;
  min-height: calc(100vh - 6.6rem);
  /* Below 500px set sidebar to be no more than 50% of screen width so it doesn't obscure too much content */
}

.navigation-sidebar--full-height {
  min-height: 100vh;
}

.navigation-sidebar--collapsed .navigation-sidebar__content-wrapper {
  width: calc(100% - 3.2rem);
}

.navigation-sidebar--collapsed .navigation-sidebar__collapse-button {
  left: 3.2rem;
}

.navigation-sidebar--collapsed .navigation-sidebar__collapse-button svg {
  transform: rotate(180deg);
}

.navigation-sidebar--collapsed .navigation-sidebar__navigation {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0s 0.1s, visibility 0s 0.1s;
}

.navigation-sidebar--dark {
  background-color: #171d29;
}

.navigation-sidebar--dark .navigation-sidebar__link {
  background-color: #171d29;
  color: #fafbff;
}

.navigation-sidebar--dark .navigation-sidebar__link:active, .navigation-sidebar--dark .navigation-sidebar__link:focus, .navigation-sidebar--dark .navigation-sidebar__link:hover, .navigation-sidebar--dark .navigation-sidebar__link--active {
  background-color: #364255;
}

.navigation-sidebar--dark .navigation-sidebar__link:focus, .navigation-sidebar--dark .navigation-sidebar__link:hover {
  color: #fafbff;
}

.navigation-sidebar--dark .navigation-sidebar__link:active, .navigation-sidebar--dark .navigation-sidebar__link--active {
  color: #fafbff;
}

.navigation-sidebar--dark .navigation-sidebar__link:active:focus, .navigation-sidebar--dark .navigation-sidebar__link:active:hover, .navigation-sidebar--dark .navigation-sidebar__link--active:focus, .navigation-sidebar--dark .navigation-sidebar__link--active:hover {
  color: #fafbff;
}

.navigation-sidebar--dark .navigation-sidebar__sidebar-wrapper--highlighted {
  border-color: #647386;
}

.navigation-sidebar--has-sticky-nav .navigation-sidebar__navigation {
  top: 6.6rem;
}

.navigation-sidebar__navigation {
  padding: 2.4rem 1.6rem;
  width: 100%;
  position: sticky;
  top: 0;
}

.navigation-sidebar__link {
  padding: 0.8rem 1.6rem 0.8rem 0.8rem;
  border-left: 8px solid transparent;
  border-radius: 4px;
  cursor: pointer;
  display: block;
  text-decoration: none;
  color: #171d29;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2.4rem;
}

.navigation-sidebar__link:last-of-type {
  margin-bottom: 0;
}

.navigation-sidebar__link:active, .navigation-sidebar__link:focus, .navigation-sidebar__link:hover, .navigation-sidebar__link--active {
  background-color: #e5eeff;
}

.navigation-sidebar__link:focus, .navigation-sidebar__link:hover {
  color: #171d29;
}

.navigation-sidebar__link:active, .navigation-sidebar__link--active {
  color: #0059ff;
}

.navigation-sidebar__link:active:focus, .navigation-sidebar__link:active:hover, .navigation-sidebar__link--active:focus, .navigation-sidebar__link--active:hover {
  color: #0059ff;
}

.navigation-sidebar__link--active {
  border-color: #0059ff;
}

.navigation-sidebar__content-wrapper {
  width: calc(100% - 26rem);
  background-color: #fcfcfd;
  padding: 4.8rem;
  position: relative;
  transition: width 0.1s ease-in-out;
}

.navigation-sidebar__content {
  margin: 0 auto;
  max-width: 110rem;
  width: 100%;
}

.navigation-sidebar__sidebar-wrapper {
  width: 26rem;
  border-right: 2px solid transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
}

.navigation-sidebar__sidebar-wrapper--highlighted {
  border-color: #d5dce2;
}

.navigation-sidebar__collapse-button {
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
  position: fixed;
  bottom: 1.6rem;
  left: 26rem;
  transform: translateX(-50%) translateX(-1px);
  transition: left 0.1s ease-in-out;
}

.navigation-sidebar__collapse-button--hidden {
  opacity: 0;
}

@media (max-width: 500px) {
  .navigation-sidebar__content-wrapper {
    width: 50%;
  }
  .navigation-sidebar__sidebar-wrapper {
    width: 100%;
  }
  .navigation-sidebar__collapse-button {
    left: 50%;
  }
}
/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.tile {
  position: relative;
  display: flex;
  margin: 0 0.8rem;
  padding: 3.2rem 3.2rem 2.4rem;
  width: 32rem;
  height: 24rem;
  flex-direction: column;
  text-decoration: none;
  color: #171d29;
  background-color: #ffffff;
  border-radius: 4px;
  box-shadow: 2px 4px 8px 0 rgba(0, 0, 0, 0.1);
  transition: 0.3s box-shadow ease;
}

.tile:hover {
  box-shadow: 4px 8px 16px 0 rgba(0, 0, 0, 0.1);
  color: #171d29;
}

.tile:hover .tile__arrow, .tile:hover .tile__icon {
  fill: #0059ff;
}

.tile:hover .tile__heading {
  color: #0059ff;
}

.tile__icon {
  width: 2.4rem;
  height: 2.4rem;
  margin-bottom: 1.6rem;
  fill: #171d29;
  transition: 0.3s fill ease;
}

.tile__heading {
  margin-bottom: 1.6rem;
  font-size: 2.2rem;
  font-weight: 600;
  text-transform: capitalize;
  transition: 0.3s color ease;
}

.tile__description {
  font-size: 1.4rem;
  line-height: 2rem;
}

.tile__arrow {
  position: absolute;
  right: 3.2rem;
  bottom: 2.4rem;
  fill: #647386;
  transition: 0.3s fill ease;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.screen {
  margin: 0 auto;
  padding: 4.8rem 1.6rem 4rem;
  background-color: #fcfcfd;
}

.screen__title {
  margin-bottom: 0.8rem;
  font-size: 3rem;
  font-weight: 900;
  text-align: center;
}

.screen__description {
  font-size: 1.8rem;
  text-align: center;
}

.screen__tiles {
  display: flex;
  margin-top: 4.8rem;
  padding: 0 4rem;
  justify-content: center;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(23, 29, 41, 0.5);
  transform: scale(0);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 50;
  /**
      Controlled by forceNoScroll prop
      Used to set modal to not scroll when it has internally scrolled elements
  **/
}

.modal--open {
  transform: scale(1);
  opacity: 1;
}

.modal--open .modal__inner {
  transform: translate(-50%, -50%) scale(1);
}

.modal--small .modal__inner {
  width: 49.6rem;
}

.modal--medium .modal__inner {
  width: 72rem;
}

.modal--large .modal__inner {
  width: 94.4rem;
}

.modal--content-scrolled .modal__header::before {
  opacity: 1;
}

.modal--force-no-scroll .modal__body {
  overflow-y: visible;
}

.modal__inner {
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 50%;
  background-color: #ffffff;
  border-radius: 8px;
  max-height: 85%;
  top: 50%;
  transform: translateX(-50%) scale(0);
  transition: transform 0.3s ease;
  overflow: visible;
}

.modal__content {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  padding: 3.2rem 0.4rem 0;
}

.modal__header {
  display: flex;
  align-items: center;
  padding: 0 2.8rem 2.4rem;
  position: relative;
}

.modal__header::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -0.4rem;
  right: -0.4rem;
  height: 1px;
  background-color: #ebeef1;
  transition: opacity 0.4s;
  opacity: 0;
}

.modal__header-text {
  font-size: 2.2rem;
  font-weight: 400;
}

.modal__close-button {
  align-self: flex-start;
  flex-shrink: 0;
  margin-left: auto;
  padding: 0 !important;
}

.modal__body {
  padding: 0 2.8rem 4.2rem;
  overflow-y: auto;
  scrollbar-color: #d5dce2 transparent;
}

.modal__body::-webkit-scrollbar {
  width: 1rem;
}

.modal__body::-webkit-scrollbar-thumb {
  background-color: #d5dce2;
  border-radius: 1rem;
}

.modal__body::-webkit-scrollbar-track {
  background-color: transparent;
  margin-top: 0.4rem;
  margin-bottom: 0.6rem;
}

.modal__footer {
  display: flex;
  gap: 0.8rem;
  padding: 1.2rem 1.6rem;
  justify-content: flex-end;
  background-color: #ebeef1;
  border-radius: 0 0 8px 8px;
  width: 100%;
}

@keyframes loading-rotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
.loading-component {
  animation: loading-rotate 1s ease infinite;
  display: inline-flex;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.select-search {
  display: flex;
  padding: 0.8rem;
  position: relative;
}

.select-search__search-icon {
  height: 1rem;
  left: 1.8rem;
  position: absolute;
  top: 1.9rem;
}

.select-search___input {
  background-color: #f9fafb;
  border: none;
  border-radius: 2px;
  font-size: 1.4rem;
  padding: 0.8rem 0.8rem 0.8rem 2.8rem;
  width: 100%;
}

.select-search___input::placeholder {
  color: #b5c2cc;
}

.select-search__clear-button {
  align-items: center;
  background: none;
  border: 0;
  display: flex;
  padding: 0.2rem 1rem 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.input {
  width: 100%;
  max-width: 34.2rem;
}

.input--no-max-width {
  max-width: none;
}

.input__label {
  display: inline-block;
  margin-bottom: 0.6rem;
  color: #171d29;
  font-weight: bold;
  letter-spacing: -0.06rem;
}

.input__label:empty {
  display: none;
}

.input__label--font-normal {
  font-weight: normal;
}

.input__label--hidden {
  position: absolute;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.input__label-required {
  color: #de350d;
}

.input__field, .pf-v5-c-form-control input:not(textarea), .pf-v5-c-form-control input:focus:not(:disabled) {
  display: block;
  padding: 1rem 1.2rem;
  width: 100%;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  background-color: #ffffff;
  color: #171d29;
  transition: border-color 0.3s ease;
  height: 4rem;
}

.input__field--natural-height {
  height: auto;
}

.input__field--slim {
  display: flex;
  padding: 0.5rem 1.2rem;
  height: 3.2rem;
}

.input__field::placeholder, .pf-v5-c-form-control input::placeholder, .pf-v5-c-form-control input:focus:not(:disabled)::placeholder {
  color: #b5c2cc;
}

.input__field:hover, .pf-v5-c-form-control input:hover, .pf-v5-c-form-control input:hover:focus:not(:disabled) {
  border-color: #647386;
}

.input__field:active, .pf-v5-c-form-control input:active, .pf-v5-c-form-control input:active:focus:not(:disabled) {
  border-color: #337aff;
}

.input__field:disabled, .pf-v5-c-form-control input:disabled, .pf-v5-c-form-control input:disabled:focus:not(:disabled) {
  border: 1px solid #ebeef1;
  background-color: #f9fafb;
  color: #b5c2cc;
}

.input__field:disabled, .pf-v5-c-form-control input:disabled, .pf-v5-c-form-control input:disabled:focus:not(:disabled), .input__field[readonly], .pf-v5-c-form-control input[readonly], .pf-v5-c-form-control input[readonly]:focus:not(:disabled) {
  cursor: not-allowed;
}

.input__field::-webkit-calendar-picker-indicator:hover, .pf-v5-c-form-control input::-webkit-calendar-picker-indicator:hover, .pf-v5-c-form-control input:focus:not(:disabled)::-webkit-calendar-picker-indicator:hover {
  cursor: pointer;
}

.input--disabled .input__field, .input--disabled .pf-v5-c-form-control input, .pf-v5-c-form-control .input--disabled input, .input--disabled .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input--disabled input:focus:not(:disabled) {
  opacity: 0.5;
}

.input--disabled .input__field:active, .input--disabled .pf-v5-c-form-control input:active, .pf-v5-c-form-control .input--disabled input:active, .input--disabled .input__field:hover, .input--disabled .pf-v5-c-form-control input:hover, .pf-v5-c-form-control .input--disabled input:hover, .input--disabled .input__field:focus, .input--disabled .pf-v5-c-form-control input:focus, .pf-v5-c-form-control .input--disabled input:focus {
  border-color: #d5dce2;
}

.input--disabled .input__dateTime-label {
  opacity: 0.5;
  border-color: #ebeef1;
}

.input--disabled + .input__dateTime-timezone,
.input--disabled .input__dateTime-reset {
  opacity: 0.5;
  pointer-events: none;
}

.input--read-only .input__field, .input--read-only .pf-v5-c-form-control input, .pf-v5-c-form-control .input--read-only input, .input--read-only .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input--read-only input:focus:not(:disabled), .input--read-only .input__field:active, .input--read-only .input__field:hover, .input--read-only .input__field:focus {
  background-color: #f9fafb;
  border-color: transparent;
}

.input--read-only .input__dateTime-label {
  border-color: transparent;
}

.input--read-only .input__dateTime-label + .input__field, .input--read-only .pf-v5-c-form-control .input__dateTime-label + input, .pf-v5-c-form-control .input--read-only .input__dateTime-label + input {
  border-left-color: #ebeef1;
}

.input--read-only + .input__dateTime-timezone,
.input--read-only .input__dateTime-reset {
  pointer-events: none;
}

.input__helper-text-wrapper {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.input__helper-text-wrapper--bottom-left {
  margin-top: 0.4rem;
}

.input__helper-text-wrapper--bottom-right {
  margin-top: 0.4rem;
  justify-content: flex-end;
}

.input__helper-text {
  font-size: 1.2rem;
  color: #647386;
}

.input__wrapper-helper-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 0.2rem;
}

.input__wrapper-helper-text .input__timezone-dropdown {
  margin: 0 0 0.2rem;
}

.input__wrapper-helper-text .input__helper-text {
  margin-top: 0;
}

.input__range-wrapper {
  display: flex;
  align-items: center;
  width: 100%;
}

.input__range-wrapper--time {
  display: block;
}

.input__range-wrapper--time .input__field, .input__range-wrapper--time .pf-v5-c-form-control input, .pf-v5-c-form-control .input__range-wrapper--time input, .input__range-wrapper--time .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input__range-wrapper--time input:focus:not(:disabled) {
  min-width: 20rem;
  margin-bottom: 0.8rem;
}

.input__range-wrapper .input__dateTime-timezone {
  margin-bottom: 0.8rem;
}

.input__range-text {
  margin: 0 0.8rem;
}

.input__wrapper {
  display: flex;
  height: 100%;
}

.input--checkbox {
  cursor: pointer;
}

.input--checkbox .input__label {
  margin-bottom: 0;
}

.input--checkbox .input__element {
  position: absolute;
  left: -999rem;
  opacity: 0;
}

.input--checkbox .input__element:focus + .input__label .input__custom-checkbox::before {
  animation-name: scale-bounce;
  animation-fill-mode: forwards;
}

.input--checkbox .input__element:checked + .input__label .input__custom-checkbox {
  background-color: #0059ff;
  border-color: #0059ff;
}

.input--checkbox .input__element:checked + .input__label .input__custom-checkbox::after {
  transform: scale(1) rotate(-45deg);
}

.input--checkbox .input__element:disabled + .input__label, .input--checkbox .input__element[readonly] + .input__label {
  cursor: not-allowed;
}

.input--checkbox .input__element:disabled + .input__label {
  color: #b5c2cc;
}

.input--checkbox .input__element:disabled + .input__label .input__custom-checkbox {
  background-color: #f9fafb;
  border-color: #d5dce2;
}

.input--checkbox .input__custom-checkbox {
  position: relative;
  display: inline-block;
  margin-right: 0.8rem;
  flex: 0 0 1.6rem;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 2px;
  border: 1px solid #b5c2cc;
  background-color: #ffffff;
  transition: background-color 0.3s ease;
  transform-style: preserve-3d;
}

.input--checkbox .input__custom-checkbox::before {
  content: "";
  position: absolute;
  top: -0.5rem;
  left: -0.5rem;
  right: -0.5rem;
  bottom: -0.5rem;
  background-color: #ccddff;
  border-radius: 6px;
  transform: translateZ(-0.1rem) scale(0);
  transition: transform 0.3s ease;
  animation-duration: 0.4s;
}

.input--checkbox .input__custom-checkbox::after {
  content: "";
  position: absolute;
  left: 0.3rem;
  top: 0.4rem;
  width: 0.7rem;
  height: 0.3rem;
  border-left: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  transition: transform 0.3s ease;
  transform: rotate(-45deg) scale(0);
}

.input--checkbox .input__label {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.input--checkbox.input--read-only {
  background-color: transparent;
}

.input--checkbox.input--read-only .input__element:checked + .input__label .input__custom-checkbox {
  background-color: #647386;
  border-color: #647386;
}

.input--checkbox.input--read-only .input__element:not(:checked) + .input__label .input__custom-checkbox {
  background-color: #f9fafb;
  border-color: transparent;
}

.input--checkbox:not(.input--read-only):hover .input__custom-checkbox {
  background-color: #ebeef1;
}

.input--checkbox:not(.input--read-only):hover .input__element:checked + .input__label .input__custom-checkbox {
  background-color: #0047cc;
}

.input--radio .input__custom-checkbox {
  border-radius: 100%;
}

.input--radio .input__custom-checkbox::before {
  border-radius: 100%;
}

.input--radio .input__custom-checkbox::after {
  left: 0.4rem;
  top: 0.4rem;
  width: 0.6rem;
  height: 0.6rem;
  border: none;
  background-color: #ffffff;
  transform: scale(0);
  border-radius: 100%;
}

.input__checkbox-label {
  width: 100%;
  overflow: hidden;
}

.input--boolean {
  display: inline-block;
  width: auto;
  padding: 0.3rem;
  border-radius: 3px;
  border: solid 1px #d5dce2;
  background-color: #fcfcfd;
}

.input--boolean .input__element {
  display: inline-block;
  min-width: 4.8rem;
  height: 3.4rem;
  border: none;
  background: none;
  color: #171d29;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.input--boolean .input__element:hover {
  background-color: #d5dce2;
}

.input--boolean .input__element:first-child {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.input--boolean .input__element:last-child {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.input--boolean .input__element--selected {
  background-color: #0059ff;
  color: #ffffff;
}

.input--boolean .input__element--selected:hover {
  background-color: #0059ff;
  color: #ffffff;
}

.input--switch, .pf-v5-c-switch {
  width: 3rem;
  height: 1.6rem;
}

.input--switch__checkbox, .pf-v5-c-switch .pf-v5-c-switch__input {
  position: absolute;
  left: -999rem;
  height: 0;
  width: 0;
}

.input--switch__checkbox:checked + .input--switch__label, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .input--switch__label, .input--switch__checkbox:checked + .pf-v5-c-switch__toggle, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .pf-v5-c-switch__toggle {
  background-color: #0059ff;
}

.input--switch__checkbox:checked + .input--switch__label::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .input--switch__label::after, .input--switch__checkbox:checked + .pf-v5-c-switch__toggle::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .pf-v5-c-switch__toggle::after {
  left: calc(100% - 0.1rem);
  transform: translateX(-100%);
}

.input--switch__checkbox:checked + .input--switch__label:active::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .input--switch__label:active::after, .input--switch__checkbox:checked + .pf-v5-c-switch__toggle:active::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .pf-v5-c-switch__toggle:active::after {
  left: calc(100% - 0.4rem);
}

.input--switch__label, .pf-v5-c-switch__toggle {
  position: relative;
  display: block;
  width: 3rem;
  height: 1.6rem;
  border-radius: 8px;
  background-color: #ebeef1;
  text-indent: -999rem;
  transition: background-color 0.3s ease;
  cursor: pointer;
}

.input--switch__label::after, .pf-v5-c-switch__toggle::after {
  content: "";
  position: absolute;
  top: 0.1rem;
  left: 0.1rem;
  width: 1.4rem;
  height: 1.4rem;
  background-color: #ffffff;
  border-radius: 100%;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25);
  transition: 0.3s;
}

.input--switch__label:active::after, .pf-v5-c-switch__toggle:active::after {
  left: 0.4rem;
}

.input__relative--duration {
  margin-right: 0.8rem;
  max-width: 20rem;
}

.input__timezone-dropdown {
  width: auto;
  margin: 0 0 0.4rem auto;
}

.input__tooltip-info {
  color: #97a9b7;
}

.input--disabled .input__dropdown-value {
  cursor: initial;
}

.input--disabled .input__dropdown-value::after {
  opacity: 0.5;
}

.input__error-message {
  margin-top: 0.2rem;
  color: #de350d;
  font-size: 1.2rem;
}

.input--datetime {
  width: auto;
}

.input--datetime .input__wrapper {
  height: auto;
}

.input--datetime .input__helper-text {
  white-space: nowrap;
}

.input--datetime .input__field, .input--datetime .pf-v5-c-form-control input, .pf-v5-c-form-control .input--datetime input, .input--datetime .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input--datetime input:focus:not(:disabled) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input__dateTime {
  display: flex;
  max-width: 34.2rem;
}

.input__dateTime-timezone {
  margin-left: 1.4rem;
  min-height: 3.8rem;
  align-self: flex-end;
  justify-content: flex-start;
}

.input__dateTime-reset {
  margin-bottom: 0.6rem;
  font-size: 1.1rem;
  margin-left: auto;
}

.input__dateTime-reset, .input__dateTime-reset:hover, .input__dateTime-reset:active, .input__dateTime-reset:focus {
  color: #171d29;
}

.input__dateTime-label {
  display: flex;
  padding: 0 0.8rem;
  height: 4rem;
  align-items: center;
  justify-content: center;
  border: 1px solid #d5dce2;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-right: none;
  background-color: #f9fafb;
  user-select: none;
  font-size: 1.4rem;
}

.input__dateTime-zone-label {
  white-space: nowrap;
}

.input__dateTime--full-width {
  max-width: none;
}

.input__dateTime--vertical {
  flex-direction: column;
}

.input__dateTime--vertical .input__dateTime-timezone {
  margin-left: 0;
  margin-top: 0.6rem;
  align-self: flex-start;
}

.input--textarea .input__dateTime__field {
  min-height: 9.6rem;
}

.input--invalid .input__dateTime__field {
  color: #de350d;
  border-color: #de350d;
  background: url("../../assets/icons/error.svg") no-repeat #ffffff;
  background-position: right 1.2rem center;
  padding-right: 3.4rem;
}

.input--invalid .input__dateTime__field--dropdown-display {
  background-position: right 2.8rem center;
  padding-right: 4.8rem;
}

.input--invalid .input__dateTime--radio .input__dateTime__custom-checkbox,
.input--invalid .input__dateTime--radio .input__dateTime__checkbox-label, .input--invalid.input__dateTime--checkbox .input__dateTime__custom-checkbox,
.input--invalid.input__dateTime--checkbox .input__dateTime__checkbox-label {
  color: #de350d;
  border-color: #de350d;
}

.input--invalid.input__dateTime--date .input__dateTime__field, .input--invalid.input__dateTime--datetime .input__dateTime__field {
  background: none;
}

.input--invalid.input__dateTime--datetime .input__dateTime__field {
  border-left-color: #d5dce2;
}

.input--invalid .input__dateTime__dateTime-label {
  border-color: #de350d;
}

.input--invalid.input__dateTime--datetime + .input__dateTime__dateTime-timezone {
  margin-bottom: 1.9rem;
}

.input--invalid.input__dateTime--textarea .input__dateTime__field {
  background-position: right 1.2rem top 0.8rem;
}

.input--invalid.input__dateTime--single-select .input__dateTime__field, .input--invalid.input__dateTime--multi-select .input__dateTime__field {
  background-position: right 3.2rem center;
}

.search-input {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
}

.search-input:hover .search-input__search-icon:not([disabled]) > path {
  fill: #171d29;
}

.search-input__input {
  padding: 0 0 0 3.6rem;
}

.search-input__search-icon {
  transform: scale(0.8);
  left: 1.2rem;
  position: absolute;
}

.search-input__search-icon:not([disabled]) > path {
  transition: fill 0.3s ease;
}

.search-input__close-button {
  min-width: 2.4rem;
  margin-left: 0.8rem;
  padding: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.input {
  width: 100%;
  max-width: 34.2rem;
}

.input--no-max-width {
  max-width: none;
}

.input__label {
  display: inline-block;
  margin-bottom: 0.6rem;
  color: #171d29;
  font-weight: bold;
  letter-spacing: -0.06rem;
}

.input__label:empty {
  display: none;
}

.input__label--font-normal {
  font-weight: normal;
}

.input__label--hidden {
  position: absolute;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.input__label-required {
  color: #de350d;
}

.input__field, .pf-v5-c-form-control input:not(textarea), .pf-v5-c-form-control input:focus:not(:disabled) {
  display: block;
  padding: 1rem 1.2rem;
  width: 100%;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  background-color: #ffffff;
  color: #171d29;
  transition: border-color 0.3s ease;
  height: 4rem;
}

.input__field--natural-height {
  height: auto;
}

.input__field--slim {
  display: flex;
  padding: 0.5rem 1.2rem;
  height: 3.2rem;
}

.input__field::placeholder, .pf-v5-c-form-control input::placeholder, .pf-v5-c-form-control input:focus:not(:disabled)::placeholder {
  color: #b5c2cc;
}

.input__field:hover, .pf-v5-c-form-control input:hover, .pf-v5-c-form-control input:hover:focus:not(:disabled) {
  border-color: #647386;
}

.input__field:active, .pf-v5-c-form-control input:active, .pf-v5-c-form-control input:active:focus:not(:disabled) {
  border-color: #337aff;
}

.input__field:disabled, .pf-v5-c-form-control input:disabled, .pf-v5-c-form-control input:disabled:focus:not(:disabled) {
  border: 1px solid #ebeef1;
  background-color: #f9fafb;
  color: #b5c2cc;
}

.input__field:disabled, .pf-v5-c-form-control input:disabled, .pf-v5-c-form-control input:disabled:focus:not(:disabled), .input__field[readonly], .pf-v5-c-form-control input[readonly], .pf-v5-c-form-control input[readonly]:focus:not(:disabled) {
  cursor: not-allowed;
}

.input__field::-webkit-calendar-picker-indicator:hover, .pf-v5-c-form-control input::-webkit-calendar-picker-indicator:hover, .pf-v5-c-form-control input:focus:not(:disabled)::-webkit-calendar-picker-indicator:hover {
  cursor: pointer;
}

.input--disabled .input__field, .input--disabled .pf-v5-c-form-control input, .pf-v5-c-form-control .input--disabled input, .input--disabled .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input--disabled input:focus:not(:disabled) {
  opacity: 0.5;
}

.input--disabled .input__field:active, .input--disabled .pf-v5-c-form-control input:active, .pf-v5-c-form-control .input--disabled input:active, .input--disabled .input__field:hover, .input--disabled .pf-v5-c-form-control input:hover, .pf-v5-c-form-control .input--disabled input:hover, .input--disabled .input__field:focus, .input--disabled .pf-v5-c-form-control input:focus, .pf-v5-c-form-control .input--disabled input:focus {
  border-color: #d5dce2;
}

.input--disabled .input__dateTime-label {
  opacity: 0.5;
  border-color: #ebeef1;
}

.input--disabled + .input__dateTime-timezone,
.input--disabled .input__dateTime-reset {
  opacity: 0.5;
  pointer-events: none;
}

.input--read-only .input__field, .input--read-only .pf-v5-c-form-control input, .pf-v5-c-form-control .input--read-only input, .input--read-only .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input--read-only input:focus:not(:disabled), .input--read-only .input__field:active, .input--read-only .input__field:hover, .input--read-only .input__field:focus {
  background-color: #f9fafb;
  border-color: transparent;
}

.input--read-only .input__dateTime-label {
  border-color: transparent;
}

.input--read-only .input__dateTime-label + .input__field, .input--read-only .pf-v5-c-form-control .input__dateTime-label + input, .pf-v5-c-form-control .input--read-only .input__dateTime-label + input {
  border-left-color: #ebeef1;
}

.input--read-only + .input__dateTime-timezone,
.input--read-only .input__dateTime-reset {
  pointer-events: none;
}

.input__helper-text-wrapper {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.input__helper-text-wrapper--bottom-left {
  margin-top: 0.4rem;
}

.input__helper-text-wrapper--bottom-right {
  margin-top: 0.4rem;
  justify-content: flex-end;
}

.input__helper-text {
  font-size: 1.2rem;
  color: #647386;
}

.input__wrapper-helper-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 0.2rem;
}

.input__wrapper-helper-text .input__timezone-dropdown {
  margin: 0 0 0.2rem;
}

.input__wrapper-helper-text .input__helper-text {
  margin-top: 0;
}

.input__range-wrapper {
  display: flex;
  align-items: center;
  width: 100%;
}

.input__range-wrapper--time {
  display: block;
}

.input__range-wrapper--time .input__field, .input__range-wrapper--time .pf-v5-c-form-control input, .pf-v5-c-form-control .input__range-wrapper--time input, .input__range-wrapper--time .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input__range-wrapper--time input:focus:not(:disabled) {
  min-width: 20rem;
  margin-bottom: 0.8rem;
}

.input__range-wrapper .input__dateTime-timezone {
  margin-bottom: 0.8rem;
}

.input__range-text {
  margin: 0 0.8rem;
}

.input__wrapper {
  display: flex;
  height: 100%;
}

.input--checkbox {
  cursor: pointer;
}

.input--checkbox .input__label {
  margin-bottom: 0;
}

.input--checkbox .input__element {
  position: absolute;
  left: -999rem;
  opacity: 0;
}

.input--checkbox .input__element:focus + .input__label .input__custom-checkbox::before {
  animation-name: scale-bounce;
  animation-fill-mode: forwards;
}

.input--checkbox .input__element:checked + .input__label .input__custom-checkbox {
  background-color: #0059ff;
  border-color: #0059ff;
}

.input--checkbox .input__element:checked + .input__label .input__custom-checkbox::after {
  transform: scale(1) rotate(-45deg);
}

.input--checkbox .input__element:disabled + .input__label, .input--checkbox .input__element[readonly] + .input__label {
  cursor: not-allowed;
}

.input--checkbox .input__element:disabled + .input__label {
  color: #b5c2cc;
}

.input--checkbox .input__element:disabled + .input__label .input__custom-checkbox {
  background-color: #f9fafb;
  border-color: #d5dce2;
}

.input--checkbox .input__custom-checkbox {
  position: relative;
  display: inline-block;
  margin-right: 0.8rem;
  flex: 0 0 1.6rem;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 2px;
  border: 1px solid #b5c2cc;
  background-color: #ffffff;
  transition: background-color 0.3s ease;
  transform-style: preserve-3d;
}

.input--checkbox .input__custom-checkbox::before {
  content: "";
  position: absolute;
  top: -0.5rem;
  left: -0.5rem;
  right: -0.5rem;
  bottom: -0.5rem;
  background-color: #ccddff;
  border-radius: 6px;
  transform: translateZ(-0.1rem) scale(0);
  transition: transform 0.3s ease;
  animation-duration: 0.4s;
}

.input--checkbox .input__custom-checkbox::after {
  content: "";
  position: absolute;
  left: 0.3rem;
  top: 0.4rem;
  width: 0.7rem;
  height: 0.3rem;
  border-left: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  transition: transform 0.3s ease;
  transform: rotate(-45deg) scale(0);
}

.input--checkbox .input__label {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.input--checkbox.input--read-only {
  background-color: transparent;
}

.input--checkbox.input--read-only .input__element:checked + .input__label .input__custom-checkbox {
  background-color: #647386;
  border-color: #647386;
}

.input--checkbox.input--read-only .input__element:not(:checked) + .input__label .input__custom-checkbox {
  background-color: #f9fafb;
  border-color: transparent;
}

.input--checkbox:not(.input--read-only):hover .input__custom-checkbox {
  background-color: #ebeef1;
}

.input--checkbox:not(.input--read-only):hover .input__element:checked + .input__label .input__custom-checkbox {
  background-color: #0047cc;
}

.input--radio .input__custom-checkbox {
  border-radius: 100%;
}

.input--radio .input__custom-checkbox::before {
  border-radius: 100%;
}

.input--radio .input__custom-checkbox::after {
  left: 0.4rem;
  top: 0.4rem;
  width: 0.6rem;
  height: 0.6rem;
  border: none;
  background-color: #ffffff;
  transform: scale(0);
  border-radius: 100%;
}

.input__checkbox-label {
  width: 100%;
  overflow: hidden;
}

.input--boolean {
  display: inline-block;
  width: auto;
  padding: 0.3rem;
  border-radius: 3px;
  border: solid 1px #d5dce2;
  background-color: #fcfcfd;
}

.input--boolean .input__element {
  display: inline-block;
  min-width: 4.8rem;
  height: 3.4rem;
  border: none;
  background: none;
  color: #171d29;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.input--boolean .input__element:hover {
  background-color: #d5dce2;
}

.input--boolean .input__element:first-child {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.input--boolean .input__element:last-child {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.input--boolean .input__element--selected {
  background-color: #0059ff;
  color: #ffffff;
}

.input--boolean .input__element--selected:hover {
  background-color: #0059ff;
  color: #ffffff;
}

.input--switch, .pf-v5-c-switch {
  width: 3rem;
  height: 1.6rem;
}

.input--switch__checkbox, .pf-v5-c-switch .pf-v5-c-switch__input {
  position: absolute;
  left: -999rem;
  height: 0;
  width: 0;
}

.input--switch__checkbox:checked + .input--switch__label, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .input--switch__label, .input--switch__checkbox:checked + .pf-v5-c-switch__toggle, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .pf-v5-c-switch__toggle {
  background-color: #0059ff;
}

.input--switch__checkbox:checked + .input--switch__label::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .input--switch__label::after, .input--switch__checkbox:checked + .pf-v5-c-switch__toggle::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .pf-v5-c-switch__toggle::after {
  left: calc(100% - 0.1rem);
  transform: translateX(-100%);
}

.input--switch__checkbox:checked + .input--switch__label:active::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .input--switch__label:active::after, .input--switch__checkbox:checked + .pf-v5-c-switch__toggle:active::after, .pf-v5-c-switch .pf-v5-c-switch__input:checked + .pf-v5-c-switch__toggle:active::after {
  left: calc(100% - 0.4rem);
}

.input--switch__label, .pf-v5-c-switch__toggle {
  position: relative;
  display: block;
  width: 3rem;
  height: 1.6rem;
  border-radius: 8px;
  background-color: #ebeef1;
  text-indent: -999rem;
  transition: background-color 0.3s ease;
  cursor: pointer;
}

.input--switch__label::after, .pf-v5-c-switch__toggle::after {
  content: "";
  position: absolute;
  top: 0.1rem;
  left: 0.1rem;
  width: 1.4rem;
  height: 1.4rem;
  background-color: #ffffff;
  border-radius: 100%;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25);
  transition: 0.3s;
}

.input--switch__label:active::after, .pf-v5-c-switch__toggle:active::after {
  left: 0.4rem;
}

.input__relative--duration {
  margin-right: 0.8rem;
  max-width: 20rem;
}

.input__timezone-dropdown {
  width: auto;
  margin: 0 0 0.4rem auto;
}

.input__tooltip-info {
  color: #97a9b7;
}

.input--disabled .input__dropdown-value {
  cursor: initial;
}

.input--disabled .input__dropdown-value::after {
  opacity: 0.5;
}

.input__error-message {
  margin-top: 0.2rem;
  color: #de350d;
  font-size: 1.2rem;
}

.input--datetime {
  width: auto;
}

.input--datetime .input__wrapper {
  height: auto;
}

.input--datetime .input__helper-text {
  white-space: nowrap;
}

.input--datetime .input__field, .input--datetime .pf-v5-c-form-control input, .pf-v5-c-form-control .input--datetime input, .input--datetime .pf-v5-c-form-control input:focus:not(:disabled), .pf-v5-c-form-control .input--datetime input:focus:not(:disabled) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input__dateTime {
  display: flex;
  max-width: 34.2rem;
}

.input__dateTime-timezone {
  margin-left: 1.4rem;
  min-height: 3.8rem;
  align-self: flex-end;
  justify-content: flex-start;
}

.input__dateTime-reset {
  margin-bottom: 0.6rem;
  font-size: 1.1rem;
  margin-left: auto;
}

.input__dateTime-reset, .input__dateTime-reset:hover, .input__dateTime-reset:active, .input__dateTime-reset:focus {
  color: #171d29;
}

.input__dateTime-label {
  display: flex;
  padding: 0 0.8rem;
  height: 4rem;
  align-items: center;
  justify-content: center;
  border: 1px solid #d5dce2;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  border-right: none;
  background-color: #f9fafb;
  user-select: none;
  font-size: 1.4rem;
}

.input__dateTime-zone-label {
  white-space: nowrap;
}

.input__dateTime--full-width {
  max-width: none;
}

.input__dateTime--vertical {
  flex-direction: column;
}

.input__dateTime--vertical .input__dateTime-timezone {
  margin-left: 0;
  margin-top: 0.6rem;
  align-self: flex-start;
}

.input--textarea .input__dateTime__field {
  min-height: 9.6rem;
}

.input--invalid .input__dateTime__field {
  color: #de350d;
  border-color: #de350d;
  background: url("../../assets/icons/error.svg") no-repeat #ffffff;
  background-position: right 1.2rem center;
  padding-right: 3.4rem;
}

.input--invalid .input__dateTime__field--dropdown-display {
  background-position: right 2.8rem center;
  padding-right: 4.8rem;
}

.input--invalid .input__dateTime--radio .input__dateTime__custom-checkbox,
.input--invalid .input__dateTime--radio .input__dateTime__checkbox-label, .input--invalid.input__dateTime--checkbox .input__dateTime__custom-checkbox,
.input--invalid.input__dateTime--checkbox .input__dateTime__checkbox-label {
  color: #de350d;
  border-color: #de350d;
}

.input--invalid.input__dateTime--date .input__dateTime__field, .input--invalid.input__dateTime--datetime .input__dateTime__field {
  background: none;
}

.input--invalid.input__dateTime--datetime .input__dateTime__field {
  border-left-color: #d5dce2;
}

.input--invalid .input__dateTime__dateTime-label {
  border-color: #de350d;
}

.input--invalid.input__dateTime--datetime + .input__dateTime__dateTime-timezone {
  margin-bottom: 1.9rem;
}

.input--invalid.input__dateTime--textarea .input__dateTime__field {
  background-position: right 1.2rem top 0.8rem;
}

.input--invalid.input__dateTime--single-select .input__dateTime__field, .input--invalid.input__dateTime--multi-select .input__dateTime__field {
  background-position: right 3.2rem center;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.file-input__wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.file-input__disabled {
  opacity: 0.3;
  pointer-events: none;
}

.file-input__field-wrapper {
  width: 100%;
  display: flex;
  border: 1px dashed #8394a5;
  background-color: #fcfcfd;
  border-radius: 4px;
}

.file-input__field-wrapper--error {
  border: 1px dashed #de350d;
}

.file-input__field {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.6rem 1.6rem 1.6rem 2.4rem;
}

.file-input__prompt {
  width: 65%;
  font-size: 1.4rem;
  line-height: 1.6rem;
  color: #364255;
}

.file-input__prompt--error {
  color: #de350d;
}

.file-input__loading {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem 1.6rem 1rem 2.4rem;
}

.file-input__loading-text {
  font-size: 1.4rem;
  line-height: 1.6rem;
  color: #364255;
}

.file-input__asset-wrapper {
  width: 100%;
}

.file-input__asset {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #d5dce2;
}

.file-input__asset:first-of-type {
  border-top: none;
}

.file-input__asset-data {
  padding: 1.2rem 0 1.2rem 2.4rem;
  width: 90%;
}

.file-input__asset-data--preview {
  padding-left: 1.6rem;
  width: calc(100% - 12rem);
}

.file-input__preview {
  width: 9.3rem;
  height: 6.4rem;
  object-fit: cover;
}

.file-input__asset-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.file-input--asset-size {
  font-size: 1.2rem;
  line-height: 1.6rem;
  margin-top: 4px;
}

.file-input__close-icon {
  fill: #647386;
  cursor: pointer;
  margin-right: 8px;
  margin-top: 8px;
}

.file-input__error-message {
  font-size: 1.2rem;
  line-height: 1.6rem;
  color: #de350d;
  margin-top: 2px;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.input__dropdown .input--checkbox {
  display: flex;
  align-items: center;
  height: 100%;
}

.input__dropdown .input--checkbox .input__label {
  width: 100%;
  height: 100%;
  margin-bottom: 0;
}

.input__dropdown--selected .input__dropdown-value {
  color: #171d29;
}

.input__dropdown--icon::after {
  content: none;
}

.input__dropdown-button {
  display: inline-block;
}

.input__dropdown-button span {
  white-space: nowrap;
}

.input__dropdown-button--restrict-width span {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: 12rem;
}

.input__dropdown-wrapper {
  position: relative;
  flex: 1;
  width: 100%;
}

.input__dropdown-value-wrapper {
  align-items: center;
  display: flex;
}

.input__dropdown-value {
  padding-right: 2.8rem;
  color: #b5c2cc;
  cursor: pointer;
  user-select: none;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
}

.input__dropdown-value::after {
  content: "";
  background: url("../../assets/icons/unfold.svg") no-repeat #ffffff;
  background-position: center;
  bottom: 0.2rem;
  height: calc(100% - 0.4rem);
  position: absolute;
  right: 1.2rem;
  top: 0.2rem;
  width: 1.2rem;
}

.input__dropdown-value--selection {
  color: #171d29;
}

.input__dropdown-list-wrapper {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 0.4rem;
  padding: 0.8rem 0;
  width: 100%;
  min-width: 20rem;
  max-height: 28.4rem;
  background-color: #ffffff;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  overflow: hidden;
  visibility: hidden;
  transition: opacity 0.15s ease;
  opacity: 0;
  z-index: 20;
}

.input__dropdown-list-wrapper--restrict-width {
  width: auto;
}

.input__dropdown-list-wrapper--contain-width {
  left: 0;
  right: 0;
}

.input__dropdown-list-wrapper--above {
  top: inherit;
  bottom: 100%;
  margin-bottom: 0.4rem;
}

.input__dropdown-list-wrapper--has-filter {
  padding-top: 0;
  max-height: 30.2rem;
}

.input__dropdown-list-wrapper--right {
  left: auto;
  right: 0;
}

.input__dropdown-list-wrapper--filter {
  left: auto;
  right: 0;
  right: 0.8rem;
}

.input__dropdown-list-wrapper--open {
  overflow-y: auto;
  visibility: visible;
  opacity: 1;
}

.input__dropdown-filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.4rem;
  background-color: #f9fafb;
  padding: 0.4rem 0.8rem;
  margin-bottom: 0.4rem;
  position: relative;
}

.input__dropdown-filter--no-label {
  flex-direction: row-reverse;
}

.input__dropdown-filter-label {
  color: #647386;
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: 600;
}

.input__dropdown-filter-cta-label {
  margin-right: 0.4rem;
}

.input__dropdown-filter-cta svg {
  transition: transform 0.2s;
  transform: rotate(90deg);
}

.input__dropdown-filter-cta--open svg {
  transform: rotate(-90deg);
}

.input__dropdown-list {
  margin: 0;
  overflow: auto;
}

.input__dropdown-list--pinned {
  overflow: initial;
  border-top: 1px solid #d5dce2;
  padding-top: 0.8rem;
  margin-top: 0.8rem;
}

.input__dropdown-global-button {
  background: none;
  border: 0;
  color: #0059ff;
  text-decoration: underline;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
  font-size: 1.2rem;
  font-weight: 600;
}

.input__dropdown-item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0 1.6rem;
  height: 3.2rem;
  transition: background-color 0.2s ease, color 0.2s ease;
  overflow: hidden;
}

.input__dropdown-item:not(.input__dropdown-item--disabled):not(.input__dropdown-item--not-clickable):not(.input__dropdown-item--section) {
  cursor: pointer;
}

.input__dropdown-item:not(.input__dropdown-item--disabled):not(.input__dropdown-item--not-clickable):not(.input__dropdown-item--section):hover, .input__dropdown-item:not(.input__dropdown-item--disabled):not(.input__dropdown-item--not-clickable):not(.input__dropdown-item--section):focus {
  background-color: #e5eeff;
  color: #0047cc;
  outline: none;
}

.input__dropdown-item:not(.input__dropdown-item--disabled):not(.input__dropdown-item--not-clickable):not(.input__dropdown-item--section):hover .input__dropdown-item-icon, .input__dropdown-item:not(.input__dropdown-item--disabled):not(.input__dropdown-item--not-clickable):not(.input__dropdown-item--section):focus .input__dropdown-item-icon {
  fill: #0047cc;
}

.input__dropdown-item--selected {
  background-color: #002366;
  color: #ffffff;
}

.input__dropdown-item--selected:hover, .input__dropdown-item--selected:focus {
  background-color: #002366;
  color: #ffffff;
}

.input__dropdown-item--selected .input__dropdown-subtext {
  color: #b5c2cc;
}

.input__dropdown-item--selected .input__dropdown-item-icon {
  fill: #ffffff;
}

.input__dropdown-item--selected .input__dropdown-item-label--comp svg {
  fill: #ffffff;
}

.input__dropdown-item--selected .input__dropdown-item-label--comp:hover svg {
  fill: #171d29;
}

.input__dropdown-item--disabled {
  color: #b5c2cc;
  cursor: not-allowed;
}

.input__dropdown-item--subtext {
  height: 4.8rem;
}

.input__dropdown-item--icon-right-align {
  flex-direction: row-reverse;
}

.input__dropdown-item--section {
  margin-top: 0.4rem;
  padding: 0 0.8rem;
  height: 2.8rem;
  color: #97a9b7;
  font-size: 1rem;
  font-weight: 900;
  text-transform: uppercase;
  border-top: 1px solid #d5dce2;
  user-select: none;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
}

.input__dropdown-item--section:first-of-type {
  border: none;
  margin-top: 0;
}

.input__dropdown-item--section-no-header {
  justify-content: flex-end;
}

.input__dropdown-item--section-header {
  align-items: flex-end;
  display: flex;
  height: auto;
}

.input__dropdown-item--section-divider {
  border-top: 1px solid #d5dce2;
}

.input__dropdown-item--not-clickable {
  cursor: default;
}

.input__dropdown-item--not-clickable:focus {
  outline: none;
}

.input__dropdown-item-label-container {
  display: flex;
  gap: 4px;
  align-items: center;
}

.input__dropdown-item-label {
  display: block;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: auto;
}

.input__dropdown-item-label--comp {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.input__dropdown-item-label-text {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.input__dropdown-item-icon {
  display: inline-block;
  vertical-align: middle;
  fill: #171d29;
  flex-shrink: 0;
}

.input__dropdown-subtext {
  display: block;
  margin-top: 0.2rem;
  color: #647386;
  font-size: 1.2rem;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.input__dropdown-empty {
  color: #647386;
  font-size: 1.4rem;
  text-align: center;
  min-height: 4.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.colorSelector--restrict-width {
  max-width: 21rem;
}

.colorSelector--regular-input-width {
  max-width: 34.2rem;
}

.colorSelector__container {
  display: flex;
}

.colorSelector__color {
  background-image: url("../../assets/backgrounds/transparent.svg");
  border: 1px solid #d5dce2;
  border-radius: 100%;
  height: 1.6rem;
  margin: 0 0.6rem;
  overflow: hidden;
  width: 1.6rem;
}

.colorSelector__description {
  color: #647386;
  display: block;
  font-size: 1.2rem;
  margin-top: 0.4rem;
}

.colorSelectorParent {
  border: 1px solid #d5dce2;
  border-radius: 100%;
  height: 1.6rem;
  margin: 0 0.6rem;
  overflow: hidden;
  width: 1.6rem;
}

.color-picker {
  align-items: flex-start;
  display: flex;
}

.color-picker__color-select-container {
  border: 1px solid #d5dce2;
  border-radius: 100%;
  flex-shrink: 0;
  height: 4rem;
  margin-left: 0.8rem;
  overflow: hidden;
  position: relative;
  width: 4rem;
}

.color-picker__color-select {
  border: 0;
  border-spacing: 0;
  cursor: pointer;
  height: 10rem;
  left: 50%;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 8rem;
}

.color-picker__color-select--with-title {
  transform: translateY(2.5rem);
}

.color-gradient {
  max-width: 38rem;
}

.color-gradient--no-max-width {
  max-width: none;
}

.color-gradient__bar {
  margin-top: 0.8rem;
  width: 100%;
  height: 4rem;
  background-color: rgba(213, 220, 226, 0.3);
  border-radius: 0.4rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.radio-button-input-group {
  border: 0;
  padding: 0;
}

.radio-button-input-group__label {
  font-weight: 700;
  font-size: 1.4rem;
}

.radio-button-input-group__label--space-below {
  margin-bottom: 1rem;
}

.radio-button-input-group__label-required {
  color: #de350d;
}

.radio-button-input-group__text {
  font-size: 1.2rem;
  color: #647386;
  margin-bottom: 0.8rem;
}

.radio-button-input-group__inputs-wrapper {
  list-style: none;
}

.radio-button-input-group__additional-details-wrapper {
  margin-top: 0.8rem;
}

.radio-button-input-group--horizontal .radio-button-input-group__input {
  display: inline-block;
  margin-right: 1.6rem;
}

.radio-button-input-group--horizontal .radio-button-input-group__input-wrapper {
  display: inline-block;
  width: auto;
  margin-right: 1.6rem;
}

.radio-button-input-group--horizontal .radio-button-input-group__input-wrapper:last-of-type {
  margin-right: 0;
}

.radio-button-input-group--vertical .radio-button-input-group__input-wrapper {
  margin-bottom: 0.8rem;
}

.radio-button-input-group--vertical .radio-button-input-group__input-wrapper:last-of-type {
  margin-bottom: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.checkbox-input-group {
  border: 0;
  padding: 0;
}

.checkbox-input-group__label {
  font-weight: 700;
  font-size: 1.4rem;
}

.checkbox-input-group__label--space-below {
  margin-bottom: 1rem;
}

.checkbox-input-group__label-required {
  color: #de350d;
}

.checkbox-input-group__text {
  font-size: 1.2rem;
  color: #647386;
  margin-bottom: 0.8rem;
}

.checkbox-input-group__inputs-wrapper {
  list-style: none;
}

.checkbox-input-group--horizontal .checkbox-input-group__input {
  display: inline-block;
  margin-right: 1.6rem;
}

.checkbox-input-group--horizontal .checkbox-input-group__input-wrapper {
  display: inline-block;
  width: auto;
  margin-right: 1.6rem;
}

.checkbox-input-group--horizontal .checkbox-input-group__input-wrapper:last-of-type {
  margin-right: 0;
}

.checkbox-input-group--vertical .checkbox-input-group__input-wrapper {
  margin-bottom: 0.8rem;
}

.checkbox-input-group--vertical .checkbox-input-group__input-wrapper:last-of-type {
  margin-bottom: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.inline-editable {
  border: 1px solid transparent;
  border-radius: 4px;
  padding: 8px 4px;
}

.inline-editable:empty::before, .inline-editable--empty::before {
  content: attr(placeholder);
}

.inline-editable br {
  display: none;
}

.inline-editable[contenteditable=plaintext-only], .inline-editable[contenteditable=true] {
  border-color: #b5c2cc;
  cursor: text;
}

.inline-editable--invalid {
  background: url("../../assets/icons/error.svg") no-repeat transparent;
  background-position: right 8px center;
  color: #de350d;
  padding-right: 32px;
}

.inline-editable--invalid[contenteditable=plaintext-only], .inline-editable--invalid[contenteditable=plaintext-only]:hover, .inline-editable--invalid[contenteditable=plaintext-only]:focus, .inline-editable--invalid[contenteditable=true], .inline-editable--invalid[contenteditable=true]:hover, .inline-editable--invalid[contenteditable=true]:focus {
  border-color: #de350d;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.inline-editable-wrapper {
  border-radius: 4px;
  display: inline-flex;
  flex-direction: column;
  margin-left: -5px;
  padding-right: 4px;
}

.inline-editable-wrapper--no-auto-positioning {
  margin-left: 0;
}

.inline-editable-wrapper[tabindex]:has([contenteditable=false]):focus, .inline-editable-wrapper[tabindex]:has([contenteditable=false]):hover {
  background-color: rgba(23, 29, 41, 0.05);
  cursor: text;
}

.inline-editable-wrapper:has([contenteditable]:empty) {
  color: #b5c2cc;
}

.inline-editable-wrapper__main {
  align-items: center;
  display: inline-flex;
}

.inline-editable-wrapper__edit-icon-wrapper {
  color: #647386;
}

.inline-editable-wrapper__buttons {
  display: flex;
  margin-left: 4px;
}

.inline-editable-wrapper__button {
  align-items: center;
  display: flex;
  justify-content: center;
  color: #647386;
}

.inline-editable-wrapper__button:hover, .inline-editable-wrapper__button:focus {
  color: #171d29;
}

.inline-editable-wrapper__button--primary-color, .inline-editable-wrapper__button--primary-color:hover, .inline-editable-wrapper__button--primary-color:focus {
  color: #0059ff;
}

.inline-editable-wrapper__validation-message {
  color: #de350d;
  font-size: 1.2rem;
  margin-top: 0.2rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.header-detailed {
  background: #ffffff;
  border-bottom: 2px solid #d5dce2;
  padding-top: 2.4rem;
}

.header-detailed__container {
  margin: 0 auto;
  max-width: 110rem;
  width: 100%;
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.header-detailed__breadcrumbs-wrapper {
  margin-bottom: 2.4rem;
}

.header-detailed__post-header-spacer {
  height: 3rem;
  width: 100%;
}

.header-detailed__description {
  margin-top: 0.8rem;
}

.header-detailed__nav {
  align-items: center;
  display: flex;
  margin-top: 1.6rem;
  width: 100%;
}

.header-detailed__nav-link {
  border-bottom: 2px solid transparent;
  color: #364255;
  display: inline-block;
  font-weight: 500;
  margin-bottom: -2px;
  padding: 1.2rem 1.6rem;
  text-decoration: none;
}

.header-detailed__nav-link--active {
  border-bottom-color: #0059ff;
  color: #0059ff;
}

.header-detailed__loading-wrapper {
  margin-left: -3rem;
  margin-top: 0.3rem;
  opacity: 0.5;
  width: 3rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.header {
  width: 100%;
}

.header__main {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.4rem;
}

.header--space-below {
  margin-bottom: 2.4rem;
}

.header__heading-wrapper {
  display: flex;
}

.header__heading {
  font-size: 3.6rem;
  line-height: 4rem;
  font-weight: 600;
  letter-spacing: -0.08rem;
  display: -webkit-box;
  margin-top: 0;
  margin-right: 1rem;
  padding-bottom: 0.4rem;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.header__button-group-wrapper {
  align-items: center;
  display: flex;
  list-style: none;
  flex-shrink: 0;
}

.header__button-wrapper {
  margin-left: 1rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.breadcrumbs {
  width: 100%;
}

.breadcrumbs__link {
  color: #647386;
  cursor: pointer;
  display: inline;
  font-size: 1.4rem;
  font-weight: 600;
  margin-right: 0.6rem;
  text-decoration: none;
}

.breadcrumbs__link::after {
  content: "/";
  margin-left: 0.4rem;
}

.breadcrumbs__link:last-child:not(.breadcrumbs__link--back) {
  color: #b5c2cc;
}

.breadcrumbs__link:last-child::after {
  content: none;
}

.breadcrumbs__link--back {
  align-items: center;
  display: flex;
}

.breadcrumbs__link--back:focus, .breadcrumbs__link--back:hover {
  color: #647386;
  text-decoration: underline;
}

.breadcrumbs__back-link-icon {
  color: #647386;
  margin-right: 0.4rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.filter-buttons,
.filter-buttons-group {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 4px;
}

.filter-buttons__title,
.filter-buttons-group__title {
  font-weight: 700;
  color: #171d29;
}

.filter-buttons__icon,
.filter-buttons-group__icon {
  margin-right: 8px;
}

.filter-buttons__icon--no-label,
.filter-buttons-group__icon--no-label {
  margin-right: 0;
}

.cookie-notice__wrapper {
  margin: 0 auto;
  max-width: 80rem;
}

.cookie-notice {
  background: #fff;
  bottom: 0;
  box-shadow: 2px 0px 5px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  padding: 2rem;
  position: fixed;
  right: 0;
  width: 100%;
  z-index: 2000;
}

.col-12 {
  flex: 0 0 auto;
  padding: 0 0.65rem;
  width: 100%;
}

.cookie-notice__body {
  align-items: center;
  display: flex;
  justify-content: center;
}

.cookie-notice__message {
  color: #555;
  font-size: 1.3rem;
}

.cookie-notice__link {
  color: #0186cb;
  cursor: pointer;
  text-decoration: none;
}

.cookie-modal {
  background: #fff;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  left: 10vw;
  max-height: 80vh;
  overflow-y: hidden;
  padding-left: 5px;
  position: absolute;
  top: 2vw;
  width: 80vw;
  z-index: 2001;
}

.cookie-modal__header {
  align-items: center;
  background: white;
  display: flex;
  height: 40px;
  justify-content: space-between;
  left: 5px;
  position: absolute;
  right: 19px;
  top: 0;
}

.cookie-modal__content {
  height: 80vh;
  overflow-y: scroll;
  padding-top: 50px;
}

.cookie-modal__title {
  font-size: 1.5rem;
}

.cookie-modal-close-button {
  background-color: #fff;
  border: none;
  color: #364255;
  font-size: 2rem;
  min-width: 45px;
  padding: 5px;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.content-section__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 8px;
}

.content-section__header-title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.content-section__box {
  background-color: #ffffff;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  padding: 16px;
}

.content-section__title-text {
  font-size: 1.8rem;
  line-height: 2.4rem;
  font-weight: 700;
}

.content-section__warning-wrapper {
  align-items: center;
  margin-left: 8px;
  display: flex;
}

.content-section__warning-icon-wrapper {
  color: #de350d;
}

.content-section__warning-text {
  color: #de350d;
  margin-left: 4px;
}

.content-section__description-text {
  color: #647386;
  line-height: 2rem;
  margin-top: 4px;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.content-ref {
  width: 100%;
  max-width: 34.2rem;
  /**
      TEXT INPUT MODULE
  **/
  /**
      DROPDOWN MODULE
  **/
  /**
      REFERENCE MODULE
  **/
}

.content-ref--no-max-width {
  max-width: none;
}

.content-ref__label {
  display: inline-block;
  margin-bottom: 0.6rem;
  color: #364255;
  font-weight: bold;
  letter-spacing: -0.06rem;
}

.content-ref__label:empty {
  display: none;
}

.content-ref__input {
  position: relative;
}

.content-ref__form {
  display: flex;
  border: 1px solid #d5dce2;
  border-radius: 4px;
  width: 100%;
}

.content-ref__form--hidden {
  display: none;
}

.content-ref__text-wrapper {
  flex: 1;
  position: relative;
  border-left: 1px solid #d5dce2;
  z-index: 10;
}

.content-ref__field {
  display: block;
  padding: 1rem 1.2rem;
  width: 100%;
  border: 0;
  border-radius: 0 4px 4px 0;
  background-color: #ffffff;
  color: #364255;
  transition: border-color 0.3s ease;
  height: 4rem;
}

.content-ref__field::placeholder {
  color: #b5c2cc;
}

.content-ref__field:hover {
  border-color: #647386;
}

.content-ref__field:active {
  border-color: #337aff;
}

.content-ref__field:disabled {
  border: 1px solid #ebeef1;
  background-color: #f9fafb;
  color: #b5c2cc;
}

.content-ref__field::-webkit-calendar-picker-indicator:hover {
  cursor: pointer;
}

.content-ref__field-info {
  display: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  padding: 1rem;
  font-size: 1.2rem;
  color: #b5c2cc;
  pointer-events: none;
}

.content-ref__field-info-visible {
  display: block;
}

.content-ref__error {
  display: none;
  font-size: 1.2rem;
  color: #de350d;
  margin-top: 0.4rem;
}

.content-ref__error-icon {
  margin-right: 0.2rem;
}

.content-ref__dropdown {
  position: relative;
}

.content-ref__dropdown--open .content-ref__dropdown-list-wrapper {
  overflow-y: auto;
  transform: scale(1);
  opacity: 1;
}

.content-ref__dropdown--selected .content-ref__dropdown-value {
  color: #171d29;
}

.content-ref__dropdown-value {
  align-items: center;
  display: flex;
  padding-right: 2.8rem;
  cursor: pointer;
  user-select: none;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  border-radius: 4px 0 0 4px;
}

.content-ref__dropdown-value::after {
  content: "";
  background: url("../../assets/icons/unfold.svg") no-repeat;
  background-position: center;
  bottom: 0.2rem;
  height: calc(100% - 0.4rem);
  position: absolute;
  right: 1.2rem;
  top: 0.2rem;
  width: 1.2rem;
}

.content-ref--invalid .content-ref__field--text {
  color: #de350d;
  background: url("../../assets/icons/error.svg") no-repeat #ffffff;
  background-position: right 1.2rem center;
  padding-right: 3.4rem;
}

.content-ref--invalid .content-ref__dropdown-value {
  color: #de350d;
}

.content-ref--invalid .content-ref__dropdown-value::after {
  background-image: url("../../assets/icons/error-unfold.svg");
}

.content-ref--invalid .content-ref__form,
.content-ref--invalid .content-ref__text-wrapper {
  border-color: #de350d;
}

.content-ref--invalid .content-ref__field-info {
  display: none;
}

.content-ref--invalid .content-ref__error {
  display: flex;
}

.content-ref__references {
  display: none;
  flex-direction: column;
  gap: 1rem;
}

.content-ref__references--is-visible {
  display: flex;
}

.content-ref--multi-reference .content-ref__references--is-visible {
  margin: 1rem 0;
}

.content-ref__reference {
  min-height: 6.2rem;
  display: flex;
  list-style-type: none;
  border: 1px solid #d5dce2;
  border-radius: 4px;
}

.content-ref__reference-thumb {
  width: 9.6rem;
  background-color: #ebeef1;
  position: relative;
}

.content-ref__reference-thumb-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.content-ref__reference-content {
  display: flex;
  align-items: center;
  padding: 1rem;
  flex: 1;
  width: calc(100% - 9.6rem);
}

.content-ref__reference-text {
  flex: 1;
  width: calc(100% - 1.8rem);
}

.content-ref__reference-title {
  margin-bottom: 0.2rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.content-ref__reference-title--error {
  display: inline-flex;
  align-items: center;
  color: #de350d;
  gap: 0.4rem;
}

.content-ref__reference-title-text {
  display: inline-block;
}

.content-ref__reference-title-text--clipped {
  display: inline;
}

.content-ref__reference-meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.content-ref__reference-text-link {
  display: flex;
  align-items: center;
  border-radius: 4px;
  height: 1.8rem;
  padding: 0 0.4rem;
  text-decoration: none;
  position: relative;
  transition: background-color 0.2s ease;
}

.content-ref__reference-text-link:hover {
  background-color: #ebeef1;
}

.content-ref__reference-text-link:focus {
  box-shadow: 0 0 0 3px #ccddff;
}

.content-ref__reference-text-link-label {
  color: #364255;
  text-transform: uppercase;
  font-size: 1rem;
}

.content-ref__reference-ext-link-icon {
  width: 0.8rem;
  height: 0.8rem;
  margin-left: 0.5rem;
}

.content-ref__reference-clear-button {
  align-self: flex-start;
  height: 2rem;
  min-width: 2rem;
  padding: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.btn, .pf-v5-c-form .pf-v5-c-button, .pf-v5-c-masthead .pf-v5-c-menu-toggle, .pf-v5-c-menu-toggle {
  position: relative;
  cursor: pointer;
  border: none;
  border-radius: 4px;
  transition: all 0.2s ease;
  line-height: 1;
  font-weight: 500;
}

.btn:focus:not(:disabled), .pf-v5-c-form .pf-v5-c-button:focus:not(:disabled), .pf-v5-c-menu-toggle:focus:not(:disabled) {
  outline: none;
  box-shadow: 0 0 0 3px #ccddff;
}

.btn:disabled, .pf-v5-c-form .pf-v5-c-button:disabled, .pf-v5-c-menu-toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn.btn--loading, .pf-v5-c-form .btn--loading.pf-v5-c-button, .btn--loading.pf-v5-c-menu-toggle {
  color: transparent;
  pointer-events: none;
  box-shadow: none;
}

.btn.btn--loading .btn__loading-icon, .pf-v5-c-form .btn--loading.pf-v5-c-button .btn__loading-icon, .btn--loading.pf-v5-c-menu-toggle .btn__loading-icon {
  animation: loading 1s ease infinite;
}

.btn.btn--loading .btn--caret, .pf-v5-c-form .btn--loading.pf-v5-c-button .btn--caret, .btn--loading.pf-v5-c-menu-toggle .btn--caret {
  visibility: hidden;
}

.btn.btn--loading .btn--icon-left, .pf-v5-c-form .btn--loading.pf-v5-c-button .btn--icon-left, .btn--loading.pf-v5-c-menu-toggle .btn--icon-left {
  visibility: hidden;
}

.btn.btn--loading .btn--icon-right, .pf-v5-c-form .btn--loading.pf-v5-c-button .btn--icon-right, .btn--loading.pf-v5-c-menu-toggle .btn--icon-right {
  visibility: hidden;
}

.btn__loading-icon {
  position: absolute;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
}

.btn--flex {
  display: flex;
  align-items: center;
}

.btn--icon {
  justify-content: center;
}

.btn--icon-left {
  margin-right: 1.6rem;
}

.btn--icon-right {
  margin-left: 1.6rem;
}

.btn--caret {
  height: 100%;
  margin-left: 1.6rem;
  border-left: 1px solid #364255;
  padding-left: 1.6rem;
  display: flex;
}

.btn--caret-icon {
  vertical-align: middle;
}

.btn--caret-white {
  border-left: 1px solid #ffffff;
}

.btn--primary, .pf-v5-c-form .pf-v5-c-button.pf-m-primary, .pf-v5-c-button.pf-m-primary, .pf-v5-c-empty-state .pf-v5-c-button {
  color: #ffffff;
  background-color: #0059ff;
  box-shadow: 0 2px 4px 0 rgba(0, 89, 255, 0.5);
}

.btn--primary:hover:not(:disabled), .pf-v5-c-button.pf-m-primary:hover:not(:disabled), .pf-v5-c-empty-state .pf-v5-c-button:hover:not(:disabled) {
  background-color: #0047cc;
}

.btn--primary:active:not(:disabled), .pf-v5-c-button.pf-m-primary:active:not(:disabled), .pf-v5-c-empty-state .pf-v5-c-button:active:not(:disabled) {
  background-color: #003599;
}

.btn--primary.btn--loading, .btn--loading.pf-v5-c-button.pf-m-primary, .pf-v5-c-empty-state .btn--loading.pf-v5-c-button {
  background-color: rgba(0, 89, 255, 0.5);
}

.btn--secondary, .pf-v5-c-toolbar__item .pf-v5-m-link, .pf-v5-c-form .pf-v5-c-button, .pf-v5-c-menu-toggle {
  color: #364255;
  background-color: #ebeef1;
}

.btn--secondary:hover:not(:disabled), .pf-v5-c-toolbar__item .pf-v5-m-link:hover:not(:disabled), .pf-v5-c-form .pf-v5-c-button:hover:not(:disabled), .pf-v5-c-menu-toggle:hover:not(:disabled) {
  background-color: #d5dce2;
}

.btn--secondary:active:not(:disabled), .pf-v5-c-toolbar__item .pf-v5-m-link:active:not(:disabled), .pf-v5-c-form .pf-v5-c-button:active:not(:disabled), .pf-v5-c-menu-toggle:active:not(:disabled) {
  background-color: #b5c2cc;
}

.btn--secondary.btn--loading, .pf-v5-c-toolbar__item .btn--loading.pf-v5-m-link, .pf-v5-c-form .btn--loading.pf-v5-c-button, .btn--loading.pf-v5-c-menu-toggle {
  background-color: rgba(235, 238, 241, 0.5);
}

.btn--tertiary {
  color: #364255;
  background-color: #e5eeff;
}

.btn--tertiary:hover:not(:disabled) {
  background-color: #ccddff;
}

.btn--tertiary:active:not(:disabled) {
  background-color: #ccddff;
}

.btn--tertiary.btn--loading {
  background-color: rgba(229, 238, 255, 0.5);
}

.btn--danger {
  color: #ffffff;
  background-color: #de350d;
}

.btn--danger:hover:not(:disabled) {
  background-color: #b63012;
}

.btn--danger:focus {
  box-shadow: 0 0 0 3px rgba(222, 53, 13, 0.25);
}

.btn--danger:active:not(:disabled) {
  background-color: #8e2b17;
}

.btn--danger.btn--loading {
  background-color: rgba(222, 53, 13, 0.5);
}

.btn--ghost, .pf-v5-c-form .pf-v5-c-button.pf-m-small {
  color: #647386;
  background-color: transparent;
  box-shadow: none;
}

.btn--ghost:hover:not(:disabled), .pf-v5-c-form .pf-v5-c-button.pf-m-small:hover:not(:disabled) {
  color: #171d29;
  background-color: rgba(23, 29, 41, 0.05);
}

.btn--ghost:active:not(:disabled), .pf-v5-c-form .pf-v5-c-button.pf-m-small:active:not(:disabled) {
  color: #171d29;
  background-color: rgba(23, 29, 41, 0.1);
}

.btn--white {
  color: #171d29;
  background-color: #ffffff;
  box-shadow: none;
  border: solid 1px #d5dce2;
}

.btn--white:hover:not(:disabled) {
  background-color: #f9fafb;
}

.btn--white:active:not(:disabled) {
  background-color: #ebeef1;
}

.btn--white.btn--loading {
  background-color: rgba(255, 255, 255, 0.5);
}

.btn--dark {
  color: #ffffff;
  background-color: #171d29;
  box-shadow: none;
  border: solid 1px #364255;
}

.btn--dark:hover:not(:disabled) {
  background-color: #364255;
  border-color: #647386;
}

.btn--dark:active:not(:disabled) {
  background-color: #647386;
  border-color: #8394a5;
}

.btn--dark.btn--loading {
  background-color: rgba(23, 29, 41, 0.5);
}

.btn--Lg, .pf-v5-c-toolbar .pf-v5-c-menu-toggle, .pf-v5-c-toolbar__item .pf-v5-c-button, .pf-v5-c-toolbar .pf-v5-c-button, .pf-v5-c-form .pf-v5-c-button, .pf-v5-c-empty-state .pf-v5-c-button {
  height: 4rem;
  padding: 0.8rem 1.6rem;
}

.btn--Lg.btn--no-text, .pf-v5-c-toolbar .btn--no-text.pf-v5-c-menu-toggle, .pf-v5-c-toolbar__item .btn--no-text.pf-v5-c-button, .pf-v5-c-toolbar .btn--no-text.pf-v5-c-button, .pf-v5-c-form .btn--no-text.pf-v5-c-button, .pf-v5-c-empty-state .btn--no-text.pf-v5-c-button {
  width: 4rem;
  height: 4rem;
  padding: 0.8rem;
}

.btn--Md {
  height: 3.2rem;
  min-width: 3.2rem;
  padding: 0.4rem 1.2rem;
}

.btn--Md.btn--no-text {
  width: 3.2rem;
  height: 3.2rem;
  padding: 0.5rem;
}

.btn--Sm, .pf-v5-c-form .pf-v5-c-button.pf-m-small {
  height: 2.4rem;
  padding: 0rem 0.8rem;
  font-size: 1.2rem;
}

.btn--Sm.btn--no-text, .pf-v5-c-form .btn--no-text.pf-v5-c-button.pf-m-small {
  width: 2.4rem;
  padding: 0.3rem;
}

.btn--Sm.btn--no-text svg, .pf-v5-c-form .btn--no-text.pf-v5-c-button.pf-m-small svg {
  position: absolute;
  width: auto;
}

.btn--Sm .btn--caret, .pf-v5-c-form .pf-v5-c-button.pf-m-small .btn--caret {
  margin-left: 0.8rem;
  padding-left: 0.8rem;
}

.btn--Sm .btn--caret-icon, .pf-v5-c-form .pf-v5-c-button.pf-m-small .btn--caret-icon {
  width: 1rem;
}

.btn--Sm .btn--icon-left, .pf-v5-c-form .pf-v5-c-button.pf-m-small .btn--icon-left {
  width: 1rem;
  margin-right: 0.8rem;
}

.btn--Sm .btn--icon-right, .pf-v5-c-form .pf-v5-c-button.pf-m-small .btn--icon-right {
  width: 1rem;
  margin-left: 0.8rem;
}

.btn--Xs {
  height: 2rem;
  padding: 0rem 0.8rem;
  font-size: 1.2rem;
}

.btn--Xs.btn--no-text {
  width: 1.8rem;
  height: 1.8rem;
  padding: 0.3rem;
}

.btn--Xs .btn--caret {
  margin-left: 0.8rem;
  padding-left: 0.8rem;
}

.btn--Xs .btn--caret-icon {
  width: 0.8rem;
}

.btn--Xs .btn--icon-left {
  width: 1rem;
  margin-right: 0.4rem;
}

.btn--Xs .btn--icon-right {
  width: 1rem;
  margin-left: 0.4rem;
}

.btn--no-text .btn--icon-left {
  margin-right: 0;
}

.btn--no-text .btn--icon-right {
  margin-right: 0;
}

@keyframes loading {
  from {
    transform: translate(-50%, -50%) rotate(0);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.inline-alert {
  align-items: center;
  border-radius: 4px;
  display: flex;
  font-weight: 700;
  gap: 4px;
  line-height: 16px;
  padding: 8px 8px 8px 12px;
}

.inline-alert--super-skinny {
  padding: 4px;
}

.inline-alert--theme-default {
  background-color: #dfd6ff;
  color: #4d2bcc;
}

.inline-alert--theme-red {
  background-color: #f8d6ce;
  color: #b63012;
}

.inline-alert .inline-alert__icon-wrapper {
  padding: 1px;
  flex-shrink: 0;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.alert {
  position: absolute;
  display: flex;
  left: 1.6rem;
  bottom: 2.4rem;
  padding: 1.2rem 1.6rem;
  align-items: center;
  border-radius: 4px;
  background-color: #dfd6ff;
  color: #4d2bcc;
  font-weight: 900;
  opacity: 0;
  transform: translateX(-150%);
  transition: transform 3s ease-out, opacity 0.2s ease;
}

.alert--success {
  background: #cce4cc;
  color: #056808;
}

.alert--success .alert__icon {
  fill: #056808;
}

.alert--success .alert__icon:hover {
  fill: #66af66;
}

.alert--error {
  background: #f8d6ce;
  color: #b63012;
}

.alert--error .alert__icon {
  fill: #b63012;
}

.alert--error .alert__icon:hover {
  fill: #eb856d;
}

.alert--visible {
  display: flex;
  opacity: 1;
  transform: translateX(0%);
  transition: transform 0.3s ease-out;
}

.alert__link {
  display: inline-block;
  margin-left: 1.6rem;
  font-weight: 500;
  color: #4d2bcc;
}

.alert__icon {
  margin-left: 8rem;
  fill: #4d2bcc;
  transition: fill 0.25s ease;
  cursor: pointer;
}

.alert__icon:hover {
  fill: #a086ff;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.additional-details-box {
  background: #fafbff;
  border-left: 0.4rem solid #0059ff;
  margin-left: 0.6rem;
  padding: 2.4rem 1.6rem;
}

/* Breakpoints */
/* Z-Index Layers */
/* Hovers */
/* Aspect ratios */
/* Opacity */
@keyframes scale-bounce {
  0% {
    transform: scale(0) translateZ(-0.1rem);
  }
  50% {
    transform: scale(1.12) translateZ(-0.1rem);
  }
  100% {
    transform: scale(1) translateZ(-0.1rem);
  }
}
/*
 * Applies an ellipsis to text that overflows the width passed into the mixin
 * NB this ONLY works on single lines of text
 */
/**
 * Renders tooltip on element when hovered.
 *
 * Example markup:
 * <span data-tooltip="Tooltip content">Hover Me</span>
 */
/**
 * Standardizes the width and properties of a content container.
 *
 * - Applies a max-width, else it'll be 100% width.
 * - Centres the container.
 */
/**
 * Apply mixin to button element to reset button styles
 */
.accordion {
  background-color: #ebeef1;
  border-radius: 4px;
  width: 100%;
}

.accordion--theme-blue {
  background-color: #e5eeff;
}

.accordion__header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  height: 4.8rem;
  width: 100%;
}

.accordion__button {
  align-items: center;
  border: 0;
  background: 0;
  cursor: pointer;
  display: flex;
  flex-grow: 1;
  padding: 8px;
  text-align: left;
}

.accordion__icon-wrapper {
  min-width: 24px;
  width: 24px;
}

.accordion__text-wrapper {
  display: flex;
  align-items: end;
  gap: 0.4rem;
}

.accordion__heading {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2.4rem;
  letter-spacing: -0.02rem;
}

.accordion__helper-text {
  color: #647386;
  line-height: 2rem;
}

.accordion__header-component {
  padding: 8px;
}

.accordion__content {
  padding: 0 8px 8px;
}

html {
  font-size: 62.5% !important;
}

:root {
  --pf-v5-global--FontSize--4xl: 5.0rem;
  --pf-v5-global--FontSize--3xl: 4.0rem;
  --pf-v5-global--FontSize--2xl: 3.6rem;
  --pf-v5-global--FontSize--xl: 2.25rem;
  --pf-v5-global--FontSize--lg: 2rem;
  --pf-v5-global--FontSize--md: 1.4rem;
  --pf-v5-global--FontSize--sm: 1.4rem;
  --pf-v5-global--FontSize--xs: 1rem;
  --pf-v5-c-table--cell--FontSize: 2rem;
}

:root:where(.pf-v5-theme-dark) {
  --pf-v5-global--palette--black-50: #e0e0e0;
  --pf-v5-global--palette--black-100: #c6c7c8;
  --pf-v5-global--palette--black-200: #aaabac;
  --pf-v5-global--palette--black-300: #868789;
  --pf-v5-global--palette--black-400: #57585a;
  --pf-v5-global--palette--black-500: #171D29;
  --pf-v5-global--palette--black-600: #36373a;
  --pf-v5-global--palette--black-700: #26292d;
  --pf-v5-global--palette--black-800: #1b1d21;
  --pf-v5-global--palette--black-900: #0f1214;
  --pf-v5-global--palette--red-9999: #fe5142;
  --pf-v5-global--palette--red-8888: #ff7468;
  --pf-v5-global--palette--blue-300: #0059FF;
  --pf-v5-global--BackgroundColor--100: #1b1d21;
  --pf-v5-global--BackgroundColor--150: #212427;
  --pf-v5-global--BackgroundColor--200: #0f1214;
  --pf-v5-global--BackgroundColor--300: #26292d;
  --pf-v5-global--BackgroundColor--400: #36373a;
  --pf-v5-global--BorderColor--100: #171D29;
  --pf-v5-global--BorderColor--200: #171D29;
  --pf-v5-global--BorderColor--300: #57585a;
  --pf-v5-global--BorderColor--400: #aaabac;
  --pf-v5-global--Color--100: #e0e0e0;
  --pf-v5-global--Color--200: #aaabac;
  --pf-v5-global--active-color--100: #0059FF;
  --pf-v5-global--primary-color--100: #0059FF;
  --pf-v5-global--primary-color--300: #0059FF;
  --pf-v5-global--success-color--100: #5ba352;
  --pf-v5-global--warning-color--100: #f0ab00;
  --pf-v5-global--warning-color--200: #f4c145;
  --pf-v5-global--danger-color--100: #fe5142;
  --pf-v5-global--danger-color--200: #ff7468;
  --pf-v5-global--link--Color: #1fa7f8;
  --pf-v5-global--link--Color--hover: #73bcf7;
  --pf-v5-global--link--Color--visited: #a18fff;
  --pf-v5-global--disabled-color--100: #57585a;
  --pf-v5-global--disabled-color--200: #171D29;
  --pf-v5-global--disabled-color--300: #aaabac;
  --pf-v5-global--icon--Color--light: #aaabac;
  --pf-v5-global--icon--Color--dark: #aaabac;
  --pf-v5-global--Color--dark-100: #e0e0e0;
  --pf-v5-global--Color--dark-200: #aaabac;
  --pf-v5-global--Color--light-100: #e0e0e0;
  --pf-v5-global--Color--light-200: #aaabac;
  --pf-v5-global--Color--light-300: #3c3f42;
  --pf-v5-global--BorderColor--dark-100: #171D29;
  --pf-v5-global--BorderColor--light-100: #171D29;
  --pf-v5-global--primary-color--light-100: #1fa7f8;
  --pf-v5-global--primary-color--dark-100: #1fa7f8;
  --pf-v5-global--link--Color--light: #1fa7f8;
  --pf-v5-global--link--Color--light--hover: #73bcf7;
  --pf-v5-global--link--Color--dark: #1fa7f8;
  --pf-v5-global--link--Color--dark--hover: #73bcf7;
  --pf-v5-global--BackgroundColor--light-100: #1b1d21;
  --pf-v5-global--BackgroundColor--light-200: #0f1214;
  --pf-v5-global--BackgroundColor--light-300: #26292d;
  --pf-v5-global--BackgroundColor--dark-100: #1b1d21;
  --pf-v5-global--BackgroundColor--dark-200: #0f1214;
  --pf-v5-global--BackgroundColor--dark-300: #26292d;
  --pf-v5-global--BackgroundColor--dark-400: #36373a;
  --pf-v5-global--BoxShadow--sm: 0 0.0625rem 0.125rem 0 #0303037a, 0 0 0.125rem 0 #0303033d;
  --pf-v5-global--BoxShadow--sm-top: 0 -0.125rem 0.25rem -0.0625rem #030303a3;
  --pf-v5-global--BoxShadow--sm-right: 0.125rem 0 0.25rem -0.0625rem #030303a3;
  --pf-v5-global--BoxShadow--sm-bottom: 0 0.125rem 0.25rem -0.0625rem #030303a3;
  --pf-v5-global--BoxShadow--sm-left: -0.125rem 0 0.25rem -0.0625rem #030303a3;
  --pf-v5-global--BoxShadow--md: 0 0.25rem 0.5rem 0rem #0303037a, 0 0 0.25rem 0 #0303033d;
  --pf-v5-global--BoxShadow--md-top: 0 -0.5rem 0.5rem -0.375rem #030303b8;
  --pf-v5-global--BoxShadow--md-right: 0.5rem 0 0.5rem -0.375rem #030303b8;
  --pf-v5-global--BoxShadow--md-bottom: 0 0.5rem 0.5rem -0.375rem #030303b8;
  --pf-v5-global--BoxShadow--md-left: -0.5rem 0 0.5rem -0.375rem #030303b8;
  --pf-v5-global--BoxShadow--lg: 0 0.5rem 1rem 0 #030303a3, 0 0 0.375rem 0 #03030352;
  --pf-v5-global--BoxShadow--lg-top: 0 -0.75rem 0.75rem -0.5rem #030303b8;
  --pf-v5-global--BoxShadow--lg-right: 0.75rem 0 0.75rem -0.5rem #030303b8;
  --pf-v5-global--BoxShadow--lg-bottom: 0 0.75rem 0.75rem -0.5rem #030303b8;
  --pf-v5-global--BoxShadow--lg-left: -0.75rem 0 0.75rem -0.5rem #030303b8;
  --pf-v5-global--BoxShadow--xl: 0 1rem 2rem 0 #030303a3, 0 0 0.5rem 0 #03030366;
  --pf-v5-global--BoxShadow--xl-top: 0 -1rem 1rem -0.5rem #030303cc;
  --pf-v5-global--BoxShadow--xl-right: 1rem 0 1rem -0.5rem #030303cc;
  --pf-v5-global--BoxShadow--xl-bottom: 0 1rem 1rem -0.5rem #030303cc;
  --pf-v5-global--BoxShadow--xl-left: -1rem 0 1rem -0.5rem #030303cc;
  --pf-v5-global--BoxShadow--inset: inset 0 0 0.625rem 0 #030303;
}

.pf-v5-c-page {
  --pf-v5-global--BackgroundColor--dark-100: #1b1d21 !important;
  --pf-v5-global--BackgroundColor--light-100: #FCFCFD !important;
}
.pf-v5-c-page__header {
  height: 6.4rem !important;
}

.pf-v5-c-title,
.keycloak__dashboard_welcome_tab,
.keycloak__dashboard_card,
.pf-v5-c-form__label-text,
.pf-v5-c-card__title-text,
.pf-v5-u-pl-sm,
.pf-v5-c-empty-state__title-text,
.pf-v5-c-modal-box__header,
.pf-v5-c-modal-box__body {
  color: var(--pf-v5-global--Color--100);
}

.pf-v5-c-page__main-section.pf-m-light.pf-u-p-0 {
  padding: 0 !important;
}

.pf-v5-c-tabs {
  padding: 0 !important;
}
.pf-v5-c-tabs:before {
  border-color: #D5DCE2;
  border-bottom-width: 2px !important;
}
.pf-v5-c-tabs .pf-v5-c-tabs__link {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  font-weight: 500;
  padding: 1.2rem 1.6rem;
}
.pf-v5-c-tabs .pf-v5-c-tabs__link:before, .pf-v5-c-tabs .pf-v5-c-tabs__link:after {
  border: none;
}
.pf-v5-c-tabs .pf-v5-c-tabs__item-text {
  font-size: 1.4rem;
  font-weight: 500;
}
.pf-v5-c-tabs.pf-m-box .pf-v5-c-tabs__link {
  --pf-v5-c-tabs__link--after--BorderTopWidth: unset;
  border: none;
}
.pf-v5-c-tabs.pf-m-box .pf-v5-c-tabs__link:before, .pf-v5-c-tabs.pf-m-box .pf-v5-c-tabs__link:after {
  border: none;
}
.pf-v5-c-tabs.pf-m-box .pf-m-current .pf-v5-c-tabs__link {
  color: var(--pf-v5-global--active-color--100);
  border: none;
  border-bottom: 2px solid var(--pf-v5-global--active-color--100);
}

.kc-main-content-page-container {
  background-color: #FCFCFD !important;
}

.pf-v5-c-toolbar__content {
  padding: 0 2rem !important;
}
.pf-v5-c-toolbar__content-section {
  align-items: center;
}
.pf-v5-c-toolbar__item {
  align-self: auto;
}
.pf-v5-c-toolbar__item .pf-v5-c-button svg {
  margin-right: 0.5rem;
}
.pf-v5-c-toolbar a.pf-v5-c-button {
  margin-right: 1rem;
}

/* extend form styles */
.pf-v5-c-form-control:before, .pf-v5-c-form-control:after {
  content: none;
}
.pf-v5-c-form-control > :is(input, select, textarea):focus {
  outline-offset: unset;
}

.pf-v5-c-clipboard-copy__group .pf-v5-c-form-control input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.pf-v5-c-form .pf-v5-c-form__group {
  display: block !important;
}
.pf-v5-c-form .pf-v5-c-form__group-control .pf-v5-c-empty-state {
  display: block;
  text-align: left;
  width: 100%;
}
.pf-v5-c-form .pf-v5-c-form__group-control .pf-v5-c-empty-state .pf-v5-c-empty-state__content {
  max-width: none;
}
.pf-v5-c-form .pf-v5-c-form__group-label {
  display: block;
  padding-bottom: 0.8rem;
}
.pf-v5-c-form .pf-v5-c-button.pf-m-control {
  background-color: #fff;
}
.pf-v5-c-form .pf-v5-c-button.pf-m-control:after {
  border-color: #d5dce2;
}
.pf-v5-c-form .pf-v5-c-button.pf-m-control:not(:first-child):after {
  border-top-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 0;
  border-color: #d5dce2;
}
.pf-v5-c-form .pf-v5-c-clipboard-copy__group .pf-v5-c-form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.pf-v5-c-button {
  display: flex;
  align-items: center;
  text-decoration: none;
  transition: background-color 0.25s;
}
.pf-v5-c-button.pf-m-link {
  color: #364255;
  background-color: #ebeef1;
}
.pf-v5-c-button.pf-m-link:hover {
  background-color: #d5dce2;
}

.pf-v5-c-pagination__nav-control .pf-v5-c-button {
  padding: 0.4rem;
}

.pf-v5-c-switch {
  display: flex;
  width: auto;
  align-items: center;
}
.pf-v5-c-switch__label {
  font-weight: 500;
}

.pf-v5-c-switch__toggle:before {
  display: none;
}

.pf-v5-c-form__group.pf-v5-m-action {
  padding-bottom: 2rem;
}
.pf-v5-c-form__group .pf-v5-c-form__group-control .pf-v5-c-menu-toggle {
  height: 4rem;
  background-color: #fff;
  padding: 0;
  border: 1px solid #d5dce2;
}
.pf-v5-c-form__group .pf-v5-c-form__group-control .pf-v5-c-menu-toggle__text {
  padding-left: 1.2rem;
}
.pf-v5-c-form__group .pf-v5-c-form__group-control .pf-v5-c-menu-toggle__toggle-icon {
  margin-right: 1rem;
}

.pf-v5-c-input-group .pf-v5-c-menu-toggle.pf-m-full-width {
  margin-right: 0.8rem;
}

.pf-v5-c-page__header-brand {
  padding: 0 24px;
}

.pf-v5-c-masthead__brand {
  display: block;
  width: 137px;
  height: 24px;
  background-image: url(../img/pulselive-logo.svg);
}
.pf-v5-c-masthead__brand img {
  display: none;
}

.pf-v5-c-masthead__toggle svg {
  width: 2.2rem;
}

.pf-v5-c-masthead {
  background-image: linear-gradient(90deg, #E91E44 0%, #1A52C1 100%);
  background-size: 100% 2px; /* Gradient size matches top border width */
  background-position: top; /* Position gradient at the top */
  background-repeat: no-repeat; /* Prevent repeating the gradient */
  background-color: #171D29;
  min-height: 64px;
}
.pf-v5-c-masthead .pf-v5-c-menu-toggle {
  background: none;
  border: none;
  background-color: #171D29;
  color: #fff;
}
.pf-v5-c-masthead .pf-v5-c-menu-toggle:hover {
  background-color: #171D29;
}

#page-sidebar {
  width: 264px;
  background: #171D29;
}

.pf-v5-c-nav__item.keycloak__page_nav__nav_item__realm-selector {
  padding: 0 8px;
  margin: 16px 0;
}
.pf-v5-c-nav__item.keycloak__page_nav__nav_item__realm-selector .pf-v5-c-menu-toggle {
  background-color: #171D29;
  border: 1px solid #647386;
  color: #fff;
  padding: 0.8rem;
}
.pf-v5-c-nav__item.keycloak__page_nav__nav_item__realm-selector .pf-v5-l-stack__item {
  font-size: 1.2rem;
  line-height: 1.8rem;
}
.pf-v5-c-nav__item.keycloak__page_nav__nav_item__realm-selector .pf-v5-l-stack__item.pf-v5-u-font-weight-bold {
  font-size: 1.4rem;
  line-height: 2.1rem;
}

#realm-select .pf-v5-c-menu__list {
  border-radius: 0;
  width: 100%;
  margin-left: 0;
  background-color: white;
}
#realm-select .pf-v5-c-divider:after {
  content: none;
}
#realm-select .pf-v5-c-menu__list-item {
  color: black;
}
#realm-select .pf-v5-c-menu__list-item .pf-v5-c-menu__item::before {
  border-top: 1px solid var(--pf-v5-global--BackgroundColor--dark-200);
}
#realm-select .pf-v5-c-menu__list-item:hover {
  color: #0047cc;
}
#realm-select .pf-v5-c-menu__list-item:hover .pf-v5-c-menu__item::before {
  background-color: #f0f0f0;
  border-top: 1px solid var(--pf-v5-global--BackgroundColor--dark-200);
}
#realm-select .pf-v5-c-menu__list-item:first-of-type:hover .pf-v5-c-menu__item::before {
  border-top: none;
}
#realm-select .pf-v5-c-menu__item-main {
  z-index: 10;
}
#realm-select .pf-v5-u-font-weight-bold {
  font-size: 1.4rem;
}
#realm-select .pf-v5-c-label {
  font-size: 1.2rem;
}

.pf-v5-l-split {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.pf-v5-l-stack__item.pf-m-fill {
  display: inline-flex;
  align-items: center;
}

.pf-v5-c-menu__group {
  padding: 1rem;
}

.pf-v5-c-menu__group-title:empty {
  display: none;
}

.pf-v5-c-text-input-group__text::before, .pf-v5-c-text-input-group__text::after {
  content: none;
}
.pf-v5-c-text-input-group__text-input {
  min-height: 3.2rem;
  border: 1px solid #d5dce2;
  border-radius: 4px;
}
.pf-v5-c-text-input-group__main.pf-m-icon {
  --pf-v5-c-text-input-group__text-input--PaddingLeft: 2.4rem !important;
}

.pf-v5-c-menu-toggle {
  width: 100%;
}
.pf-v5-c-menu-toggle:before, .pf-v5-c-menu-toggle:after {
  display: none;
}
.pf-v5-c-menu-toggle:focus:not(:disabled) {
  box-shadow: none;
}
.pf-v5-c-menu-toggle.pf-m-plain.pf-m-text {
  background: none;
}

.pf-v5-c-menu__list {
  border-radius: 4px;
}
.pf-v5-c-menu__list .pf-v5-c-menu__item {
  text-decoration: none;
}

.pf-v5-c-menu {
  border-radius: 4px;
  box-shadow: 0 0.25rem 0.5rem 0rem rgba(3, 3, 3, 0.1215686275), 0 0 0.25rem 0 rgba(3, 3, 3, 0.0588235294);
}

.pf-v5-c-nav__section {
  margin-top: 16px;
}

.pf-v5-c-nav__section-title {
  color: #B5C2CC;
  font-size: 1.2rem;
  text-transform: uppercase;
  border: none;
  padding: 0 16px;
  margin-bottom: 8px;
}

.pf-v5-c-nav__item.pf-m-expandable::before {
  display: none;
}

.pf-v5-c-page__sidebar-body {
  padding: 0;
}

.pf-v5-c-nav__list {
  margin: 0 8px;
}
.pf-v5-c-nav__list .pf-v5-c-button.pf-m-control {
  background-color: #fff;
}
.pf-v5-c-nav__list .pf-v5-c-button.pf-m-control:after {
  border-color: #d5dce2;
}
.pf-v5-c-nav__list .pf-v5-c-button.pf-m-control:not(:first-child):after {
  border-top-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 0;
  border-color: #d5dce2;
}

.pf-v5-c-nav__link {
  align-items: center;
  border-radius: 5px;
  display: flex;
  font-size: 14px;
  overflow: hidden;
  padding: 10px 18px;
}
.pf-v5-c-nav__link svg {
  vertical-align: 0 !important;
}
.pf-v5-c-nav__link:after {
  display: none;
}
.pf-v5-c-nav__link:focus {
  background: transparent;
}

.pf-v5-c-nav__link.pf-m-current {
  background: #364255;
  color: #FFFFFF;
}

.pf-v5-c-nav__link.pf-m-current:after,
.pf-v5-c-nav__link.pf-m-current:hover:after {
  border-left-width: 8px;
  display: block;
  border-color: #0059FF;
}

.pf-v5-c-nav__link.pf-m-current:hover {
  background: #364255;
  color: #FFFFFF;
}

.pf-v5-c-nav__link.pf-m-current:hover:after {
  border-left-width: 8px;
}

.pf-v5-c-nav__link:hover {
  background: #364255;
}

.pf-v5-c-alert__title {
  font-size: 1.4rem;
}
.pf-v5-c-alert__icon {
  align-items: center;
  font-size: 1.4rem;
}
.pf-v5-c-alert__action .pf-v5-c-button {
  height: 100%;
}

.pf-v5-c-menu .pf-v5-svg,
.pf-v5-u-ml-md .pf-v5-svg {
  width: 1rem;
}

.pf-v5-c-table[class*=pf-m-grid] {
  margin: 2rem;
  width: calc(100% - 4rem);
}
.pf-v5-c-table[class*=pf-m-grid] tr:where(.pf-v5-c-table__tr) > * {
  color: #171d29;
}
.pf-v5-c-table[class*=pf-m-grid] tr th, .pf-v5-c-table[class*=pf-m-grid] tr td {
  padding: 5px 10px !important;
}
.pf-v5-c-table[class*=pf-m-grid] tr td {
  height: 48px;
}
.pf-v5-c-table[class*=pf-m-grid] tr th {
  height: 40px;
  vertical-align: middle;
}

.pf-v5-c-table__td .pf-v5-c-menu-toggle {
  height: 4rem;
  background-color: #fff;
  border: 1px solid #d5dce2;
}
.pf-v5-c-table__td .pf-v5-c-menu-toggle:hover {
  background-color: #fff;
}
.pf-v5-c-table__td .pf-v5-c-menu-toggle.pf-m-plain {
  border: none;
  background-color: #ebeef1;
}
.pf-v5-c-table__td .pf-v5-c-menu-toggle.pf-m-plain:hover {
  background-color: #d5dce2;
}
.pf-v5-c-table__td .pf-v5-c-menu {
  top: 4px !important;
}
.pf-v5-c-table__td .pf-v5-c-menu__content {
  padding: 0.4rem 0;
}
.pf-v5-c-table__td .pf-v5-c-menu__list {
  padding: 0;
}

.pf-v5-c-table.pf-m-compact tr:not(.pf-v5-c-table__expandable-row) > :last-child {
  padding-left: 16px;
}

.table__row-cell:last-of-type, .pf-v5-c-table[class*=pf-m-grid] tr:not(:last-child) td:last-of-type {
  padding-right: 16px !important;
}

.pf-v5-c-table tbody > tr > * {
  vertical-align: middle !important;
}

.pf-v5-c-table__check label {
  margin: 0 !important;
}

.pf-v5-c-form .pf-v5-c-button.pf-m-primary:hover:not(:disabled) {
  background-color: #0047cc;
}

.keycloak__loading-container {
  flex-direction: column-reverse;
}
.keycloak__loading-container #loading-text {
  padding-top: 40px;
  position: relative;
}
.keycloak__loading-container #loading-text:before {
  background: url("../public/logo.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 24px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 137px;
}
.keycloak__loading-container .pf-v5-c-spinner {
  margin-top: 20px;
}

.pf-v5-c-empty-state .pf-v5-c-button {
  display: inline-block;
  height: auto;
}

.kc_eventListeners_select {
  width: auto;
}

.pf-v5-c-radio {
  grid-gap: 0.8rem;
}

.kc-form-radio-btn > input,
.kc-editor-radio-btn > input {
  position: relative;
  top: 4px;
}

.pf-v5-c-chip-group .pf-v5-c-chip {
  height: 3rem;
  display: flex;
  gap: 0.8rem;
}
.pf-v5-c-chip-group .pf-v5-c-chip__text {
  line-height: 1.1;
}
.pf-v5-c-chip-group .pf-v5-c-chip .pf-v5-c-button {
  height: 3rem;
}

/*# sourceMappingURL=custom-admin.css.map */
