.component-switcher-components {
  display: grid;
  grid-template-columns: [full-start] minmax(24px, 1fr) [main-start] minmax(0, 1600px) [main-end] minmax(24px, 1fr) [full-end];
}
@media (min-width: 1000px) {
  .component-switcher-components {
    grid-template-columns: [full-start] minmax(45px, 1fr) [main-start] minmax(0, 1600px) [main-end] minmax(45px, 1fr) [full-end];
  }
}
@media (min-width: 1400px) {
  .component-switcher-components {
    grid-template-columns: [full-start] minmax(100px, 1fr) [main-start] minmax(0, 1600px) [main-end] minmax(100px, 1fr) [full-end];
  }
}

.component-header {
  grid-column: full;
  background: #333;
  padding: 12px 20px;
  position: sticky;
  top: 0;
  z-index: 6;
}
.component-header > .inner {
  display: flex;
  flex-flow: row wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 2px 20px;
}
.component-header * {
  color: #fff;
  display: inline-block;
}
.component-header .title,
.component-header .tw-info {
  position: relative;
  top: -2px;
}
.component-header .title {
  font-size: 1.25rem;
}
.component-header .tw-info {
  font-weight: 700;
  font-size: 0;
  letter-spacing: 0.09em;
  flex: 0 0 auto;
  margin-right: auto;
}
.component-header .tw-info > * {
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
}
.component-header .tw-num {
  text-transform: uppercase;
  margin-right: 5px;
}
.component-header .tw-link {
  position: relative;
  text-decoration: underline;
  white-space: nowrap;
}
.component-header .tw-link:not(:last-child) {
  margin-right: 10px;
  padding-right: 10px;
}
.component-header .tw-link:not(:last-child)::after {
  position: absolute;
  top: -5%;
  right: 1px;
  bottom: auto;
  left: auto;
  content: " ";
  height: 110%;
  width: 1px;
  background: #fff;
}
.component-header .tw-link:hover {
  opacity: 0.5;
}
.component-header .copy-anchor-link {
  position: relative;
  top: 2px;
  flex: 0 0 20px;
  cursor: copy;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M46.114,22.654l-9.386,9.383c-5.181,5.184-13.585,5.184-18.766,0-.816-.813-1.455-1.73-2.015-2.676l4.361-4.361c.207-.209,.463-.329,.708-.47,.301,1.03,.828,2.006,1.638,2.815,2.587,2.589,6.797,2.586,9.383,0l9.383-9.383c2.589-2.589,2.589-6.797,0-9.385-2.586-2.587-6.794-2.587-9.383,0l-3.337,3.34c-2.707-1.055-5.625-1.338-8.464-.922l7.11-7.11c5.184-5.182,13.585-5.182,18.769,0,5.181,5.182,5.181,13.585,0,18.768Zm-24.813,15.429l-3.339,3.34c-2.587,2.586-6.797,2.586-9.385,0-2.587-2.589-2.587-6.797,0-9.386l9.385-9.383c2.589-2.589,6.796-2.589,9.383,0,.808,.808,1.335,1.784,1.639,2.812,.246-.143,.499-.259,.706-.467l4.361-4.359c-.557-.949-1.199-1.863-2.015-2.678-5.181-5.182-13.585-5.182-18.767,0L3.887,27.346c-5.182,5.184-5.182,13.585,0,18.769,5.182,5.181,13.585,5.181,18.767,0l7.112-7.112c-2.842,.418-5.759,.133-8.465-.92Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: center;
  transition: 0.3s ease-in-out;
}
.component-header .copy-anchor-link:hover {
  opacity: 0.5;
}

.component-switcher {
  grid-column: full;
  position: relative;
}
.component-switcher-selector {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  transition: ease-in-out 0.15s;
  opacity: 0.5;
}
.component-switcher-selector:hover {
  transform: translateX(0);
  opacity: 1;
}
.component-switcher-selector:hover > a {
  padding: 0 10px;
  width: auto;
  color: #fff;
  pointer-events: all;
}
.component-switcher-selector:hover > a.-active::before {
  left: auto;
  right: -15px;
}
.component-switcher-selector > a {
  display: inline-flex;
  align-items: center;
  position: relative;
  height: 40px;
  background-color: #d62a2a;
  color: transparent;
  font-size: 0.875rem;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  border: 0;
  pointer-events: none;
  width: 0;
  transition: 0.15s;
}
.component-switcher-selector > a.-active {
  background-color: firebrick;
  cursor: default;
  pointer-events: all;
}
.component-switcher-selector > a.-active::before {
  content: "";
  position: absolute;
  left: 0;
  width: 15px;
  height: 100%;
  background: firebrick;
  transition: none;
}
.component-switcher-selector > a.-active::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: -10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #fff;
  transform: translateY(-50%);
}
.component-switcher-selector > a:not(.-active):hover {
  background-color: #cb2727;
  transition: background-color 0.15s ease-in-out;
}
.component-switcher-components > * {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  z-index: -1;
}
.component-switcher-components [data-cs-visibility=show] {
  position: static;
  visibility: visible;
  opacity: 1;
  z-index: 1;
}