.route-switchyard {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.route-toggle,
.station-key,
.brief-copy {
  font: inherit;
  color: inherit;
}

.route-toggle {
  width: 100%;
  min-height: 88px;
  padding: 0.9rem;
  text-align: left;
  border: 1px solid var(--node-hair);
  border-radius: var(--small-corner);
  background: #fff;
  cursor: pointer;
}

.route-toggle span {
  display: block;
  font-weight: 900;
}

.route-toggle small {
  display: block;
  margin-top: 0.25rem;
  color: var(--vm-graphite-soft);
}

.route-toggle.is-selected {
  border-color: var(--docker-orange);
  box-shadow: inset 7px 0 0 var(--docker-orange);
}

.route-readout {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  min-height: 100%;
  padding: 1.15rem;
  color: #fff;
  background: var(--vm-graphite);
  border-radius: var(--small-corner);
}

.route-readout strong {
  font-size: 1.2rem;
}

.station-sequencer {
  display: grid;
  grid-template-columns: minmax(180px, 0.42fr) minmax(280px, 1fr);
  gap: 16px;
  margin-top: 20px;
}

.station-rail {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.station-key {
  width: 100%;
  min-height: 52px;
  padding: 0.8rem;
  text-align: left;
  border: 1px solid var(--node-hair);
  border-radius: var(--small-corner);
  background: #fff;
  cursor: pointer;
  font-weight: 900;
}

.station-key.is-active {
  color: #fff;
  background: var(--kube-blue);
  border-color: var(--kube-blue);
}

.station-readout {
  min-height: 250px;
  padding: clamp(18px, 3vw, 28px);
  border-radius: var(--small-corner);
  background:
    linear-gradient(135deg, rgba(43, 111, 159, 0.14), transparent 36%),
    #fff;
  border: 1px solid var(--node-hair);
}

.station-readout ul {
  margin: 1rem 0 0;
  padding-left: 1.2rem;
}

.station-readout li + li {
  margin-top: 0.45rem;
}

.scope-board {
  display: grid;
  gap: 14px;
  padding: 1rem;
  background: #fff;
  border: 1px solid var(--node-hair);
  border-radius: var(--large-corner);
}

.seat-meter {
  display: grid;
  gap: 0.5rem;
  font-weight: 900;
}

.seat-meter input {
  width: 100%;
  accent-color: var(--docker-orange);
}

.delivery-choices,
.runtime-checks {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 1rem;
  border: 1px solid var(--node-hair);
  border-radius: var(--small-corner);
}

.delivery-choices legend,
.runtime-checks legend {
  padding: 0 0.35rem;
  color: var(--kube-blue);
  font-weight: 900;
}

.delivery-choices label,
.runtime-checks label {
  display: flex;
  gap: 0.55rem;
  align-items: flex-start;
}

.delivery-choices input,
.runtime-checks input {
  margin-top: 0.28rem;
  accent-color: var(--warehouse-olive);
}

.call-brief {
  display: block;
  min-height: 78px;
  padding: 1rem;
  color: #fff;
  background: var(--query-plum);
  border-radius: var(--small-corner);
  font-weight: 800;
}

.brief-copy {
  justify-self: start;
  min-height: 44px;
  padding: 0.75rem 1rem;
  color: #fff;
  background: var(--vm-graphite);
  border: 0;
  border-radius: var(--small-corner);
  cursor: pointer;
  font-weight: 900;
}

.brief-copy.was-copied {
  background: var(--warehouse-olive);
}

@media (max-width: 780px) {
  .station-sequencer {
    grid-template-columns: 1fr;
  }
}
