.subject-activity {
  background: var(--surface, #FFFFFF);
  border: 1px solid var(--line, #E4E2DD);
  border-radius: 12px;
  box-shadow: var(--shadow, 0 1px 2px rgba(31, 35, 40, 0.05));
  color: var(--ink, #1F2328);
  padding: 1.15rem 1.2rem;
}

.subject-activity-kicker {
  color: var(--muted, #5B616B);
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  margin: 0 0 0.4rem;
}

.subject-activity-prompt {
  font-family: var(--sans, "PingFang SC", "Microsoft YaHei", sans-serif);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  margin: 0 0 0.8rem;
}

.subject-activity-passage {
  line-height: 1.75;
  margin: 0 0 0.9rem;
}

.subject-activity-task {
  display: grid;
  gap: 0.55rem;
}

.subject-activity-choice {
  background: var(--surface, #FFFFFF);
  color: var(--ink, #1F2328);
  border: 1.5px solid var(--line-strong, #CFCBC3);
  border-radius: 10px;
  cursor: pointer;
  min-height: 2.75rem;
  padding: 0.7rem 0.85rem;
  text-align: left;
  justify-content: flex-start;
}

.subject-activity-choice:hover,
.subject-activity-choice:focus-visible {
  border-color: var(--primary, #2F5D8A);
}

.subject-activity-choice.is-selected {
  border-color: var(--primary, #2F5D8A);
  background: var(--primary-soft, #E8EEF5);
}

.subject-activity-choice:disabled {
  cursor: default;
}

.subject-activity-note,
.subject-activity-status {
  color: var(--muted, #5B616B);
  line-height: 1.6;
  margin: 0.85rem 0 0;
}

.subject-activity-status:empty {
  display: none;
}
