/* Year drawers: native details supports touch, keyboard and JavaScript-free use. */
.results-intro { margin: -8px 0 24px; color: var(--text-muted); }
.results-archive { display: grid; gap: 16px; }
.results-year { border: 1px solid var(--border); border-radius: 0; background: #fff; overflow: hidden; }
.results-year-heading { display: flex; align-items: center; gap: 24px; padding: 24px 28px; cursor: pointer; list-style: none; background: var(--crimson-pale); color: var(--crimson); }
.results-year-heading::-webkit-details-marker { display: none; }
.results-year-heading:hover { background: #f5e4e8; }
.results-year-heading:focus-visible { outline: 3px solid var(--crimson); outline-offset: -5px; }
.results-year-label { font-size: calc(32px + var(--page-font-increase, 0pt)); font-weight: 700; line-height: 1.3; white-space: nowrap; font-variant-numeric: tabular-nums; }
.results-year-label > span { margin-left: 8px; font-size: calc(16px + var(--page-font-increase, 0pt)); }
.results-year-caption { color: var(--text-muted); font-size: calc(13px + var(--page-font-increase, 0pt)); }
.results-year-caption > span { display: block; font-size: calc(15px + var(--page-font-increase, 0pt)); font-weight: 700; color: var(--crimson); }
.results-toggle { position: relative; flex: 0 0 32px; width: 32px; height: 32px; margin-left: auto; border: 1px solid currentColor; border-radius: 0; }
.results-toggle::before, .results-toggle::after { content: ''; position: absolute; background: currentColor; top: 14px; left: 8px; width: 14px; height: 2px; }
.results-toggle::after { transform: rotate(90deg); }
.results-year[open] .results-toggle::after { transform: rotate(0); }
.results-year-body { padding: 28px; border-top: 1px solid var(--border); }
.results-overview { margin: 0 0 24px; }
.results-competitions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.results-competition { min-width: 0; padding: 22px; border: 1px solid var(--border); border-top: 3px solid var(--crimson); border-radius: 0; }
.results-month { margin: 0 0 6px; font-size: calc(13px + var(--page-font-increase, 0pt)); font-weight: 700; color: var(--crimson); }
.results-competition h3 { margin: 0 0 18px; font-size: calc(17px + var(--page-font-increase, 0pt)); line-height: 1.6; overflow-wrap: anywhere; }
.results-standings { margin: 0; }
.results-standings > div { display: flex; gap: 12px; padding: 10px 0; border-top: 1px solid var(--border); }
.results-standings dt { flex: 0 0 auto; color: var(--text-muted); font-size: calc(13px + var(--page-font-increase, 0pt)); padding-top: 2px; }
.results-standings dd { margin: 0; min-width: 0; font-size: calc(14px + var(--page-font-increase, 0pt)); }
.results-standings strong { color: var(--crimson); margin-right: 6px; }
.results-score { display: block; color: var(--text-muted); font-size: calc(13px + var(--page-font-increase, 0pt)); font-variant-numeric: tabular-nums; }
.results-note, .results-award { font-size: calc(13px + var(--page-font-increase, 0pt)); margin: 12px 0 0; }
.results-note { color: var(--text-muted); }
.results-award { padding: 8px 12px; background: var(--crimson-pale); border-radius: 0; color: var(--crimson); }
.results-source { margin: 24px 0 0; color: var(--text-muted); font-size: calc(13px + var(--page-font-increase, 0pt)); }
.results-source a { text-decoration: underline; text-underline-offset: 3px; }
.results-source a:hover { color: var(--crimson); }
@media (max-width: 640px) {
  .results-year-heading { gap: 12px; padding: 20px 16px; flex-wrap: wrap; }
  .results-year-label { font-size: calc(28px + var(--page-font-increase, 0pt)); }
  .results-year-caption { order: 3; flex-basis: 100%; }
  .results-year-body { padding: 20px 14px; }
  .results-competitions { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .results-competition { padding: 18px 16px; }
}
@media print {
  .results-year::details-content { content-visibility: visible; }
  .results-year-body { display: block; }
  .results-competition { break-inside: avoid; }
}
