@charset "UTF-8";
body article {
  counter-reset: sidenote definition proposition theorem corollary;
}

.definition {
  margin-block: 1rem;
}
.definition:not(.nonum) {
  counter-increment: definition;
}
.definition::before {
  font-weight: bold;
  content: "definition " counter(definition) ". ";
  text-transform: capitalize;
}
.definition.nonum::before {
  content: "definition. ";
}
.definition .caption {
  font-style: italic;
}
.definition .caption::before {
  content: "(";
}
.definition .caption::after {
  content: ")";
}
.definition *:first-child:last-child {
  margin-block: 0;
}
.definition p:first-child {
  display: inline;
}

.proposition {
  margin-block: 1rem;
}
.proposition:not(.nonum) {
  counter-increment: proposition;
}
.proposition::before {
  font-weight: bold;
  content: "proposition " counter(proposition) ". ";
  text-transform: capitalize;
}
.proposition.nonum::before {
  content: "proposition. ";
}
.proposition .caption {
  font-style: italic;
}
.proposition .caption::before {
  content: "(";
}
.proposition .caption::after {
  content: ")";
}
.proposition *:first-child:last-child {
  margin-block: 0;
}
.proposition p:first-child {
  display: inline;
}

.theorem {
  margin-block: 1rem;
}
.theorem:not(.nonum) {
  counter-increment: theorem;
}
.theorem::before {
  font-weight: bold;
  content: "theorem " counter(theorem) ". ";
  text-transform: capitalize;
}
.theorem.nonum::before {
  content: "theorem. ";
}
.theorem .caption {
  font-style: italic;
}
.theorem .caption::before {
  content: "(";
}
.theorem .caption::after {
  content: ")";
}
.theorem *:first-child:last-child {
  margin-block: 0;
}
.theorem p:first-child {
  display: inline;
}

.corollary {
  margin-block: 1rem;
}
.corollary:not(.nonum) {
  counter-increment: corollary;
}
.corollary::before {
  font-weight: bold;
  content: "corollary " counter(corollary) ". ";
  text-transform: capitalize;
}
.corollary.nonum::before {
  content: "corollary. ";
}
.corollary .caption {
  font-style: italic;
}
.corollary .caption::before {
  content: "(";
}
.corollary .caption::after {
  content: ")";
}
.corollary *:first-child:last-child {
  margin-block: 0;
}
.corollary p:first-child {
  display: inline;
}

.proof {
  margin-block: 1rem;
}
.proof::before {
  font-style: italic;
  content: "proof. ";
  text-transform: capitalize;
}
.proof::after {
  content: "∎";
  float: right;
}
.proof *:first-child:last-child {
  margin-block: 0;
}
.proof p:first-child {
  display: inline;
}

math[display=block] {
  margin-block: 1rem;
}
