/* MAX PRO homepage server cards.
   Intentionally scoped away from .players so the approved monitor stays untouched. */
.node {
  --node-line-soft: color-mix(in srgb, var(--node-accent) 18%, rgba(126, 146, 168, 0.16));
  --node-line-strong: color-mix(in srgb, var(--node-accent) 42%, rgba(255, 255, 255, 0.16));
  --node-glass: rgba(7, 12, 22, 0.72);
  isolation: isolate;
  transform: translateZ(0);
}

.node::after {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--node-accent) 12%, transparent), transparent 34%),
    linear-gradient(168deg, rgba(255, 255, 255, 0.055), transparent 18% 74%, rgba(255, 255, 255, 0.025)),
    radial-gradient(circle at 86% 14%, color-mix(in srgb, var(--node-accent) 16%, transparent), transparent 30%),
    linear-gradient(180deg, rgba(16, 25, 42, 0.96), rgba(4, 8, 15, 0.92));
  border-color: var(--node-line-strong);
  box-shadow:
    0 30px 70px rgba(0, 0, 0, 0.42),
    0 0 40px -27px var(--node-glow),
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    inset 0 -1px 0 rgba(255, 255, 255, 0.025),
    inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

.node__head {
  min-height: 52px;
  padding: 13px 18px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--node-accent) 15%, transparent), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent),
    rgba(3, 6, 12, 0.64);
  border-bottom-color: var(--node-line-soft);
}

.node__head::after {
  content: '';
  position: absolute;
  left: 18px;
  right: 34px;
  bottom: -1px;
  height: 2px;
  background: linear-gradient(90deg, var(--node-accent), color-mix(in srgb, var(--node-accent) 34%, transparent), transparent 78%);
  opacity: 0.72;
}

.node > .node__head::before {
  background: var(--node-line-strong);
}

.node__type {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 0;
  color: #D2DBE8;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.node__type::before {
  content: '';
  width: 8px;
  height: 8px;
  flex: none;
  border-radius: 50%;
  background: var(--node-accent);
  box-shadow: 0 0 14px var(--node-glow);
}

.node__live {
  min-height: 26px;
  padding: 6px 10px;
  border: 1px solid var(--node-line-strong);
  border-radius: 999px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--node-accent) 14%, transparent), rgba(3, 6, 12, 0.55));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 0 20px -14px var(--node-glow);
}

.node__body {
  gap: 17px;
  padding-top: clamp(24px, 3.2vw, 36px);
}

.node__name {
  position: relative;
  display: inline-grid;
  width: fit-content;
  max-width: 100%;
  padding-bottom: 14px;
  color: #F8FBFF;
  font-size: clamp(1.62rem, 2.8vw, 2.18rem);
  letter-spacing: 0.075em;
  text-shadow: 0 0 22px rgba(255, 255, 255, 0.08);
}

.node__name::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: min(100%, 260px);
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--node-accent), color-mix(in srgb, var(--node-accent) 28%, transparent), transparent);
  box-shadow: 0 0 16px -7px var(--node-glow);
}

.node__name span {
  display: inline-block;
  margin-left: 10px;
}

.node__name-mode {
  max-width: min(100%, 24ch);
  overflow-wrap: anywhere;
  vertical-align: baseline;
}

.node__pitch {
  max-width: 58ch;
  padding: 13px 15px;
  border-left: 3px solid color-mix(in srgb, var(--node-accent) 54%, transparent);
  border-radius: 8px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--node-accent) 7%, transparent), transparent 72%),
    rgba(3, 6, 12, 0.24);
  color: #AEBBCC;
  line-height: 1.65;
}

.node .ipline {
  position: relative;
  min-height: 62px;
  padding: 13px 14px;
  border-style: solid;
  border-color: var(--node-line-strong);
  border-radius: 8px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--node-accent) 13%, transparent), transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent),
    rgba(3, 6, 12, 0.58);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 10px 24px rgba(0, 0, 0, 0.16);
}

.node .ipline::before {
  content: '';
  position: absolute;
  left: 0;
  top: 11px;
  bottom: 11px;
  width: 4px;
  border-radius: 0 999px 999px 0;
  background: var(--node-accent);
  box-shadow: 0 0 16px -5px var(--node-glow);
  opacity: 0.72;
}

.node .ipline__label {
  color: #A8B6C8;
  font-weight: 800;
}

.node .ipline__value {
  color: #F8FBFF;
  font-size: 1rem;
  border-bottom-color: color-mix(in srgb, var(--node-accent) 72%, #fff);
  text-shadow: 0 0 18px color-mix(in srgb, var(--node-accent) 16%, transparent);
}

.node .features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.node .features li {
  align-items: center;
  min-height: 42px;
  padding: 9px 10px;
  border: 1px solid var(--node-line-soft);
  border-radius: 7px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--node-accent) 8%, transparent), transparent 58%),
    var(--node-glass);
  color: #AEBBCC;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.node .features__tick {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  flex: none;
  border: 1px solid color-mix(in srgb, var(--node-accent) 28%, transparent);
  border-radius: 5px;
  background: color-mix(in srgb, var(--node-accent) 13%, transparent);
  line-height: 1;
}

.node__ctas {
  gap: 11px;
}

.node__ctas .cta,
.node__ctas .copybtn {
  min-height: 42px;
  border-color: var(--node-line-strong);
  border-radius: 8px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 12px 22px rgba(0, 0, 0, 0.18);
}

.node__emblem {
  display: none;
}

@media (max-width: 760px) {
  .node .features {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .node__head {
    min-height: 46px;
    padding: 10px 13px;
  }

  .node__head::after {
    left: 13px;
    right: 24px;
  }

  .node__body {
    gap: 14px;
    padding-inline: 18px;
  }

  .node__name {
    font-size: 1.5rem;
    letter-spacing: 0.055em;
  }

  .node__name span {
    margin-left: 5px;
  }

  .node__pitch {
    padding: 11px 12px;
  }

  .node .ipline {
    min-height: 58px;
    padding: 12px 13px;
  }

  .node .features li {
    min-height: 38px;
  }
}

/* Homepage below-monitor polish. Keep this clear of .players monitor selectors. */
.node .features {
  counter-reset: node-feature;
  gap: 10px;
  margin-top: 2px;
}

.node .features li {
  counter-increment: node-feature;
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  min-height: 50px;
  padding: 11px 12px;
  overflow: hidden;
  border-color: color-mix(in srgb, var(--node-accent) 24%, rgba(126, 146, 168, 0.18));
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--node-accent) 13%, transparent), transparent 56%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent),
    rgba(4, 8, 15, 0.62);
}

.node .features li::before {
  content: "0" counter(node-feature);
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  align-self: center;
  border: 1px solid color-mix(in srgb, var(--node-accent) 42%, transparent);
  border-radius: 7px;
  color: #F8FBFF;
  background: color-mix(in srgb, var(--node-accent) 14%, rgba(3, 6, 12, 0.72));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 0 18px -12px var(--node-glow);
  font-family: var(--font-mono);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.node .features li::after {
  content: "";
  position: absolute;
  left: 53px;
  right: 12px;
  bottom: 8px;
  height: 1px;
  background: linear-gradient(90deg, color-mix(in srgb, var(--node-accent) 38%, transparent), transparent);
  opacity: 0.5;
}

.node .features__tick {
  display: none;
}

.node .features li > span:not(.features__tick) {
  min-width: 0;
  align-self: center;
  color: #D5DEEA;
  font-size: 0.86rem;
  line-height: 1.35;
}

.node__ctas {
  margin-top: 2px;
  padding-top: 14px;
  border-top: 1px solid color-mix(in srgb, var(--node-accent) 24%, rgba(126, 146, 168, 0.12));
}

.node__ctas .cta--node {
  flex: 1 1 190px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--node-accent) 20%, transparent), transparent 62%),
    rgba(5, 9, 17, 0.72);
}

.node__ctas .copybtn--ghost {
  color: #B9C6D6;
  background: rgba(3, 6, 12, 0.36);
}

.term,
.cap,
.comms__panel,
.feedbox {
  isolation: isolate;
  transform: translateZ(0);
}

.term {
  overflow: hidden;
}

.term::before {
  content: "";
  position: absolute;
  left: 18px;
  right: 34px;
  top: 0;
  z-index: 1;
  height: 2px;
  background: linear-gradient(90deg, var(--term-accent), color-mix(in srgb, var(--term-accent) 28%, transparent), transparent);
  box-shadow: 0 0 18px -8px var(--term-glow);
  pointer-events: none;
}

.term::after,
.cap::after,
.feedbox::after {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.045), transparent 36%),
    linear-gradient(180deg, rgba(16, 25, 42, 0.88), rgba(4, 8, 15, 0.9));
  border-color: rgba(126, 146, 168, 0.24);
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.term__tabs {
  gap: 8px;
  padding: 9px 12px 0;
  border-bottom-color: rgba(126, 146, 168, 0.18);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--term-accent) 11%, transparent), transparent 50%),
    rgba(3, 6, 12, 0.34);
}

.term__tab {
  position: relative;
  min-height: 42px;
  padding: 12px 16px;
  border: 1px solid transparent;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  color: #9FAFC2;
  background: rgba(255, 255, 255, 0.018);
}

.term__tab.is-active {
  color: #F8FBFF;
  border-color: color-mix(in srgb, var(--term-accent) 44%, rgba(126, 146, 168, 0.18));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--term-accent) 15%, transparent), rgba(5, 9, 17, 0.56));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.term__panel {
  gap: clamp(22px, 3vw, 38px);
}

.steps {
  gap: 10px;
}

.steps__line {
  position: relative;
  grid-template-columns: 40px minmax(96px, 0.32fr) minmax(0, 1fr);
  align-items: center;
  min-height: 56px;
  padding: 10px 12px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--term-accent) 22%, rgba(126, 146, 168, 0.18));
  border-radius: 8px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--term-accent) 9%, transparent), transparent 68%),
    rgba(3, 6, 12, 0.44);
}

.steps__line::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 0 999px 999px 0;
  background: var(--term-accent);
  box-shadow: 0 0 14px -5px var(--term-glow);
}

.steps__num {
  width: 30px;
  height: 30px;
  border-radius: 7px;
  border-color: color-mix(in srgb, var(--term-accent) 48%, transparent);
  background: color-mix(in srgb, var(--term-accent) 12%, rgba(3, 6, 12, 0.74));
  color: #F8FBFF;
}

.steps__verb {
  color: #F8FBFF;
  font-size: 0.72rem;
}

.steps__text {
  min-width: 0;
  color: #B9C6D6;
}

.steps__cmd {
  display: inline-block;
  max-width: 100%;
  border: 1px solid color-mix(in srgb, var(--term-accent) 26%, transparent);
  border-radius: 6px;
  color: #F8FBFF;
  background: rgba(3, 6, 12, 0.56);
  overflow-wrap: anywhere;
}

.term__side {
  gap: 12px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--term-accent) 20%, rgba(126, 146, 168, 0.16));
  border-radius: 8px;
  background:
    linear-gradient(150deg, color-mix(in srgb, var(--term-accent) 9%, transparent), transparent 48%),
    rgba(3, 6, 12, 0.32);
}

.term__art {
  width: 100%;
  max-width: 250px;
  padding: 10px;
  border: 1px solid color-mix(in srgb, var(--term-accent) 18%, transparent);
  border-radius: 8px;
  background: rgba(3, 6, 12, 0.28);
}

.term__note {
  margin: 0;
  padding: 10px 11px;
  border-left: 3px solid color-mix(in srgb, var(--term-accent) 48%, transparent);
  border-radius: 7px;
  background: rgba(3, 6, 12, 0.32);
  color: #9FAFC2;
  line-height: 1.5;
}

.caps__grid {
  counter-reset: cap-card;
}

.cap {
  counter-increment: cap-card;
  min-height: 190px;
  overflow: hidden;
  --cap-accent: #7DE4FF;
}

.cap:nth-child(2) { --cap-accent: #A690FF; }
.cap:nth-child(3) { --cap-accent: #6FE3B2; }
.cap:nth-child(4) { --cap-accent: #FF6F86; }

.cap::before {
  content: "0" counter(cap-card);
  position: absolute;
  top: 16px;
  right: 18px;
  z-index: 0;
  color: color-mix(in srgb, var(--cap-accent) 36%, transparent);
  font-family: var(--font-mono);
  font-size: 2.35rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}

.cap > * {
  position: relative;
  z-index: 1;
}

.cap__icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-bottom: 18px;
  padding: 8px;
  border: 1px solid color-mix(in srgb, var(--cap-accent) 38%, transparent);
  border-radius: 9px;
  color: var(--cap-accent);
  background: color-mix(in srgb, var(--cap-accent) 10%, rgba(3, 6, 12, 0.68));
  filter: drop-shadow(0 0 10px color-mix(in srgb, var(--cap-accent) 24%, transparent));
}

.cap__title {
  color: #F8FBFF;
}

.cap__stat {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  padding: 6px 9px;
  border: 1px solid color-mix(in srgb, var(--cap-accent) 26%, transparent);
  border-radius: 999px;
  color: var(--cap-accent);
  background: color-mix(in srgb, var(--cap-accent) 8%, transparent);
  white-space: normal;
}

.comms__panel::after {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--c-zombie) 11%, transparent), transparent 38%, color-mix(in srgb, var(--c-city) 13%, transparent)),
    linear-gradient(180deg, rgba(16, 25, 42, 0.9), rgba(4, 8, 15, 0.9));
  border-color: rgba(126, 146, 168, 0.24);
  box-shadow:
    0 26px 64px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    inset 0 0 92px rgba(214, 234, 255, 0.045);
}

.comms__panel {
  display: grid;
  justify-items: center;
  gap: 16px;
  padding-block: clamp(44px, 6vw, 72px);
}

.comms__head {
  margin-bottom: 0;
  text-shadow: 0 0 24px rgba(214, 234, 255, 0.14);
}

.comms__sub {
  max-width: 58ch;
  margin: 0;
  color: #B9C6D6;
  line-height: 1.6;
}

.comms__panel .cta--discord {
  margin-top: 4px;
  min-width: min(260px, 100%);
  justify-content: center;
  border-color: rgba(214, 234, 255, 0.38);
  background:
    linear-gradient(90deg, rgba(214, 234, 255, 0.08), transparent 62%),
    rgba(3, 6, 12, 0.42);
}

.comms__panel .cta--discord:hover,
.comms__panel .cta--discord:focus-visible {
  color: #F8FBFF;
  border-color: rgba(214, 234, 255, 0.56);
  background:
    linear-gradient(90deg, rgba(214, 234, 255, 0.12), transparent 62%),
    rgba(3, 6, 12, 0.52);
}

.comms__micro {
  display: grid;
  justify-items: center;
  gap: 9px;
  max-width: 100%;
  margin-top: 0;
  font-size: 0.64rem;
  letter-spacing: 0.14em;
  text-align: center;
  color: #98A6B9;
}

.comms__services {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px;
}

.comms__services span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 11px;
  border: 1px solid rgba(214, 234, 255, 0.17);
  border-radius: 999px;
  color: #D6EAFF;
  background:
    linear-gradient(90deg, rgba(125, 228, 255, 0.10), transparent 70%),
    rgba(3, 6, 12, 0.44);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 10px 24px -20px rgba(125, 228, 255, 0.65);
}

.comms__contact {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  max-width: 100%;
  margin: 0;
  padding: 7px 12px;
  border: 1px solid rgba(126, 146, 168, 0.18);
  border-radius: 7px;
  background: rgba(3, 6, 12, 0.36);
  line-height: 1.35;
  color: #7E92A8;
}

.comms__contact span {
  color: #7E92A8;
}

.comms__contact b {
  font-weight: 800;
  color: #F4F8FF;
  letter-spacing: 0.08em;
}

.comms__contact i {
  font-style: normal;
  color: rgba(125, 228, 255, 0.62);
}

.term__btns .copybtn,
.term__side .ipline .copybtn {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--term-accent) 7%, transparent), transparent 64%),
    rgba(3, 6, 12, 0.38);
}

.term__btns .copybtn:hover,
.term__btns .copybtn:focus-visible,
.term__side .ipline .copybtn:hover,
.term__side .ipline .copybtn:focus-visible {
  color: var(--term-accent);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--term-accent) 12%, transparent), transparent 64%),
    rgba(3, 6, 12, 0.52);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.045),
    0 0 18px -11px var(--term-glow);
}

.term__btns .copybtn.is-copied,
.term__btns .copybtn.is-copied:hover,
.term__side .ipline .copybtn.is-copied,
.term__side .ipline .copybtn.is-copied:hover {
  color: #F8FBFF;
  border-color: color-mix(in srgb, var(--term-accent) 58%, rgba(255, 255, 255, 0.12));
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--term-accent) 16%, transparent), transparent 68%),
    rgba(3, 6, 12, 0.58);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 0 20px -10px var(--term-glow);
}

.feedbox {
  overflow: hidden;
}

.feedbox__bar {
  min-height: 46px;
  padding-inline: 18px;
  background:
    linear-gradient(90deg, rgba(125, 228, 255, 0.08), transparent 52%),
    rgba(3, 6, 12, 0.52);
}

.feedbox__cmd {
  color: #D5DEEA;
}

.feedbox__lines {
  height: 280px;
  padding: 18px 20px;
}

.fl {
  min-height: 31px;
  padding: 5px 0;
  border-bottom: 1px solid rgba(126, 146, 168, 0.075);
}

.fl__msg {
  color: #B9C6D6;
}

@media (max-width: 900px) {
  .steps__line {
    grid-template-columns: 40px minmax(80px, auto);
    row-gap: 5px;
  }

  .steps__text {
    grid-column: 2 / -1;
  }
}

@media (max-width: 600px) {
  .node .features li {
    grid-template-columns: 32px minmax(0, 1fr);
    min-height: 46px;
  }

  .term__tabs {
    display: grid;
    grid-template-columns: 1fr;
    padding: 10px 10px 0;
  }

  .term__tab {
    border-radius: 7px;
    border-bottom: 1px solid transparent;
  }

  .term__tab.is-active {
    border-bottom-color: color-mix(in srgb, var(--term-accent) 44%, rgba(126, 146, 168, 0.18));
  }

  .term__panel {
    padding: 18px;
  }

  .steps__line {
    grid-template-columns: 36px minmax(0, 1fr);
    padding: 10px;
  }

  .steps__text {
    grid-column: 1 / -1;
  }

  .comms__services {
    width: min(100%, 310px);
  }

  .comms__services span {
    flex: 1 1 128px;
    justify-content: center;
  }

  .comms__contact {
    width: min(100%, 310px);
    border-radius: 8px;
  }
}

/* Match homepage button filling to the player-panel action buttons. */
main .cta,
main .copybtn {
  --btn-accent: var(--node-accent, var(--c-brand));
  --btn-glow: var(--node-glow, var(--c-brand-glow));
  position: relative;
  overflow: hidden;
  color: var(--btn-accent);
  border-color: color-mix(in srgb, var(--btn-accent) 62%, var(--c-grid));
  background:
    linear-gradient(90deg, transparent 50%, color-mix(in srgb, var(--btn-accent) 10%, transparent) 50%) 0 0 / 200% 100%;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
  transition:
    color var(--dur-fast),
    background-position 300ms var(--ease-hud),
    box-shadow var(--dur-fast),
    border-color var(--dur-fast),
    transform var(--dur-fast);
}

main .cta:hover,
main .cta:focus-visible,
main .copybtn:hover,
main .copybtn:focus-visible,
main .copybtn.is-copied {
  color: var(--btn-accent);
  border-color: var(--btn-accent);
  background:
    linear-gradient(90deg, transparent 50%, color-mix(in srgb, var(--btn-accent) 10%, transparent) 50%) -100% 0 / 200% 100%;
  box-shadow:
    0 0 18px -5px var(--btn-glow),
    inset 0 0 14px -8px var(--btn-glow);
}

main .cta:active,
main .copybtn:active,
main .copybtn.is-copied:active {
  background:
    linear-gradient(90deg, transparent 50%, color-mix(in srgb, var(--btn-accent) 15%, transparent) 50%) -100% 0 / 200% 100%;
}

.term__btns .copybtn,
.term__side .ipline .copybtn {
  --btn-accent: var(--term-accent);
  --btn-glow: var(--term-glow);
}

.comms__panel .cta--discord {
  --btn-accent: var(--c-brand);
  --btn-glow: var(--c-brand-glow);
}

.hero__ctas .cta,
.node .ipline .copybtn,
.node__ctas .cta,
.node__ctas .copybtn,
.term__btns .copybtn,
.term__side .ipline .copybtn,
.comms__panel .cta--discord {
  position: relative;
  overflow: hidden;
  color: var(--btn-accent);
  border-color: color-mix(in srgb, var(--btn-accent) 62%, var(--c-grid));
  background:
    linear-gradient(90deg, transparent 50%, color-mix(in srgb, var(--btn-accent) 10%, transparent) 50%) 0 0 / 200% 100%;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.hero__ctas .cta:hover,
.hero__ctas .cta:focus-visible,
.node .ipline .copybtn:hover,
.node .ipline .copybtn:focus-visible,
.node__ctas .cta:hover,
.node__ctas .cta:focus-visible,
.node__ctas .copybtn:hover,
.node__ctas .copybtn:focus-visible,
.term__btns .copybtn:hover,
.term__btns .copybtn:focus-visible,
.term__side .ipline .copybtn:hover,
.term__side .ipline .copybtn:focus-visible,
.comms__panel .cta--discord:hover,
.comms__panel .cta--discord:focus-visible,
.node .copybtn.is-copied,
.term__btns .copybtn.is-copied,
.term__side .ipline .copybtn.is-copied {
  color: var(--btn-accent);
  border-color: var(--btn-accent);
  background:
    linear-gradient(90deg, transparent 50%, color-mix(in srgb, var(--btn-accent) 10%, transparent) 50%) -100% 0 / 200% 100%;
  box-shadow:
    0 0 18px -5px var(--btn-glow),
    inset 0 0 14px -8px var(--btn-glow);
}

.hero__ctas .cta:active,
.node .ipline .copybtn:active,
.node__ctas .cta:active,
.node__ctas .copybtn:active,
.term__btns .copybtn:active,
.term__side .ipline .copybtn:active,
.comms__panel .cta--discord:active {
  background:
    linear-gradient(90deg, transparent 50%, color-mix(in srgb, var(--btn-accent) 15%, transparent) 50%) -100% 0 / 200% 100%;
}
