/* 후보 홈 — 레이아웃 보조·명단·테마 연동 */

.eposter-shell--kang .eparty-roster {
  color: #e2e8f0;
}
.eposter-shell--kang .eparty-roster__head h2,
.eposter-shell--kang .eparty-roster__head p {
  color: #94a3b8;
}
.eposter-shell--kang .eparty-roster__official h3 {
  color: #5eead4;
}
.eposter-shell--kang .eparty-roster__person {
  background: rgba(15, 23, 42, 0.75);
  border: 1px solid rgba(148, 163, 184, 0.25);
  color: #f1f5f9;
}
.eposter-shell--kang .eparty-roster__person-link {
  color: #5eead4;
}
.eposter-shell--kang .eparty-roster__person--highlight {
  border-color: rgba(45, 212, 191, 0.55);
  background: rgba(15, 118, 110, 0.2);
}

.candidate-site--kang .candidate-site__official {
  color: #5eead4;
  background: rgba(15, 118, 110, 0.22);
  border: 1px solid rgba(45, 212, 191, 0.35);
}
.candidate-site--kang .candidate-roster-fold summary {
  background: rgba(15, 118, 110, 0.2);
  color: #5eead4;
  border: 1px solid rgba(45, 212, 191, 0.3);
}
.candidate-site--kang .eposter__identity-row {
  border-top: 1px solid rgba(148, 163, 184, 0.22);
  padding-top: var(--gap-4);
}

.candidate-site--ha .candidate-site__official {
  color: #0046a6;
  background: rgba(0, 70, 166, 0.08);
  border: 1px solid rgba(0, 70, 166, 0.18);
}
.candidate-site--ha .candidate-roster-fold summary {
  background: rgba(0, 70, 166, 0.08);
  color: #0046a6;
  border: 1px solid rgba(0, 70, 166, 0.15);
}
.candidate-site--ha .eposter__identity-row {
  border-top: 1px solid rgba(0, 70, 166, 0.15);
  padding-top: var(--gap-4);
}

.candidate-site--park .candidate-site__official {
  color: #c2410c;
  background: rgba(234, 88, 12, 0.08);
  border: 1px solid rgba(234, 88, 12, 0.22);
}
.candidate-site--park .candidate-roster-fold summary {
  background: rgba(234, 88, 12, 0.08);
  color: #c2410c;
  border: 1px solid rgba(234, 88, 12, 0.2);
}
.candidate-site--park .eposter__identity-row {
  border-top: 1px solid rgba(234, 88, 12, 0.15);
  padding-top: var(--gap-4);
}

.candidate-roster-fold summary::-webkit-details-marker {
  display: none;
}
.candidate-roster-fold summary::after {
  content: "▾";
  margin-left: auto;
  font-size: 10px;
  opacity: 0.65;
}
.candidate-roster-fold[open] summary::after {
  transform: rotate(180deg);
}
