.rail-glyph--governance {
  --glyph: url("rail-governance.svg");
}

.gov-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 6px 2px 12px;
}

.gov h1 {
  margin: 0;
  font: 500 22px/28px var(--f-geist);
  letter-spacing: -0.44px;
  color: var(--tdp-text);
}

.gov-lead {
  margin: 6px 0 0;
  max-width: 68ch;
  color: var(--tdp-text-2);
  font: 400 13px/18px var(--f-geist);
}

.gov-power {
  flex: none;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

.gov-k {
  color: var(--tdp-text-2);
  font: 400 12px/16px var(--f-geist);
}

.gov-power strong {
  color: var(--tdp-text);
  font: 500 20px/24px var(--f-geist);
  letter-spacing: -0.3px;
}

.gov-power strong span {
  color: var(--tdp-text-2);
  font-size: 13px;
  font-weight: 400;
}

.gov-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
}

.gov-metric {
  min-height: 92px;
  padding: 14px 16px 15px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.gov-metric strong {
  color: var(--tdp-text);
  font: 500 18px/24px var(--f-geist);
  letter-spacing: -0.28px;
}

.gov-metric .gov-sub {
  color: var(--tdp-text-2);
  font: 400 12px/16px var(--f-geist);
}

.gov-tools {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 2px 2px;
}

.gov-count {
  color: var(--tdp-text-2);
  font: 400 12px/16px var(--f-geist);
  padding-bottom: 8px;
}

.gov-prop {
  padding: 16px 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.gov-prop[hidden] {
  display: none;
}

.gov-prop-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.gov-id {
  color: var(--tdp-text-2);
  font: 500 12px/16px var(--f-geist);
}

.gov-prop h2 {
  margin: 2px 0 0;
  color: var(--tdp-text);
  font: 500 16px/22px var(--f-geist);
  letter-spacing: -0.16px;
}

.gov-prop .gov-copy {
  margin: 6px 0 0;
  max-width: 78ch;
  color: var(--tdp-text-2);
  font: 400 13px/18px var(--f-geist);
}

.gov-status {
  flex: none;
  height: 22px;
  padding: 0 8px;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  color: var(--tdp-green);
  background: #2f7d5c24;
  font: 500 12px/16px var(--f-geist);
}

.gov-status--queued {
  color: var(--warn);
  background: #d9a54a24;
}

.gov-status--passed {
  color: var(--tdp-text-2);
  background: #a1a1aa1f;
}

.gov-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--tdp-text-2);
  font: 400 12px/16px var(--f-geist);
}

.gov-meta b {
  color: var(--tdp-text);
  font-weight: 500;
}

.gov-split {
  display: grid;
  gap: 6px;
}

.gov-split-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--tdp-text-2);
  font: 400 12px/16px var(--f-geist);
}

.gov-split-row b {
  color: var(--tdp-text);
  font-weight: 500;
}

.gov-for-label b {
  color: var(--tdp-green);
}

.gov-against-label b {
  color: var(--neg);
}

.gov-track {
  height: 6px;
  border-radius: 99px;
  background: var(--line);
  display: flex;
  overflow: hidden;
}

.gov-for {
  background: var(--tdp-green);
  height: 100%;
}

.gov-against {
  background: var(--neg);
  height: 100%;
}

.gov-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.gov-note {
  color: var(--tdp-text-2);
  font: 400 12px/16px var(--f-geist);
}

.shell-v2 .gov .btn {
  background: var(--sh-green);
  min-width: 88px;
  height: 32px;
  box-shadow: none;
  filter: none;
  color: var(--sh-page);
  font-family: var(--sh-font);
  letter-spacing: -0.12px;
  text-transform: none;
  border: 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 8px 16px;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  transform: none;
}

.shell-v2 .gov .btn:after {
  display: none;
}

.shell-v2 .gov .btn:hover {
  background: var(--pine-bright);
  border-color: transparent;
  color: var(--sh-page);
  filter: none;
}

.shell-v2 .gov .btn-ghost {
  background: transparent;
  color: var(--tdp-text);
  border: 1px solid var(--line-2);
}

.shell-v2 .gov .btn-ghost:hover {
  background: var(--silver-dim);
  border-color: var(--line-3);
  color: var(--tdp-text);
}

.gov-empty {
  padding: 28px 16px;
}

@media (max-width: 860px) {
  .gov-metrics {
    grid-template-columns: 1fr 1fr;
  }

  .gov-head,
  .gov-power {
    align-items: flex-start;
  }

  .gov-head {
    flex-direction: column;
  }
}

@media (max-width: 560px) {
  .gov-metrics {
    grid-template-columns: 1fr;
  }

  .gov-tools {
    align-items: flex-start;
    flex-direction: column;
  }

  .gov-count {
    padding-bottom: 0;
  }
}
