/* Athlete layer F4 (8 Oct) - the public results page. Composes the shared
   tokens (screens/shared/ro-tokens.css) and invents no colour: every one is a
   token. Mobile first, one column at any width down to 320px, no fixed width:
   a row is the place (final groups only), the name and club with any note
   under them, and the number at the right. Words carry every state; no colour
   is the only signal of anything. */
*{box-sizing:border-box}
[hidden]{display:none !important}
body{margin:0;background:var(--ro-paper);color:var(--ro-ink);font-size:var(--fs-0);line-height:1.4;overflow-wrap:anywhere}
.rp-wrap{max-width:720px;margin:0 auto;padding:0 var(--s2)}

/* the red bar: the White wordmark (R19, sized by wordmark.css) and the event's name in type */
.rp-bar{background:var(--ro-red);color:var(--ro-paper);padding:var(--s1) 0}
.rp-bar__in{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2)}
.rp-home{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1);min-height:44px;color:var(--ro-paper);text-decoration:none;
  font-size:var(--fs-1);font-weight:900;line-height:1.1}

.rp-title{margin:var(--s3) 0 0;font-size:var(--fs-3);font-weight:900;line-height:1.1}
.rp-lead{padding:var(--s2) 0 0}
.rp-lead__line{margin:0 0 var(--s1);font-weight:700}
.rp-rehearsal{padding:4px var(--s2);background:var(--ro-yellow);color:var(--ro-ink);font-weight:900}
.rp-updated{margin:0 0 var(--s2);color:var(--ro-dim);font-size:14px;font-weight:700}

/* R43 (P1, D12): first in the events, a row of links to each event's section, each a 44 px touch target. The link is
   a flex box, and its item has no margin of its own (the tokens give every li one; seen at 375 px as a 24 px gap) */
.rp-jump__list{display:flex;flex-wrap:wrap;gap:var(--s1);margin:0 0 var(--s2);padding:0;list-style:none}
.rp-jump__item{margin:0}
.rp-jump__link{display:flex;align-items:center;min-height:44px;padding:0 var(--s2);border-radius:var(--radius-sm);
  background:var(--ro-neutral);color:var(--ro-red);font-weight:900;text-decoration:none}

/* one section per event, one per division inside it */
.rp-events{padding:0 0 var(--s5)}
.rp-event{padding:var(--s2) 0;border-top:2px solid var(--ro-ink)}
.rp-event__title{margin:0;font-size:var(--fs-2);font-weight:900;line-height:1.15}
.rp-event__what{margin:4px 0 var(--s1);color:var(--ro-dim);font-size:14px}
.rp-event__empty{margin:var(--s1) 0 0;font-weight:700}
.rp-group{margin:var(--s2) 0 0}
.rp-group__title{margin:0;font-size:var(--fs-1);font-weight:900}
.rp-group__note{margin:4px 0 var(--s1);color:var(--ro-dim);font-size:14px}

/* the rows: never numbered by the list itself (a tie shares a place).
   R140 (page check, shot 03: at 320 px names and clubs wrapped beside a value that kept its whole width): a row is a grid
   whose name column takes the width it needs first (minmax(0,max-content): and it can still shrink, so a long name wraps
   rather than run off) and whose value takes the rest (1fr, never under its own min-content). An event's result never
   parts its number from its unit (.rp-row__value--result); any other value (a no-result word, the Para section's points)
   wraps between its words, never inside one. A placed list's rows lead with the place's own column. Below 375 px the two
   column gaps are --s1 */
.rp-rows{margin:0;padding:0;list-style:none}
.rp-row{display:grid;grid-template-columns:minmax(0,max-content) 1fr;align-items:start;gap:var(--s1) var(--s2);padding:var(--s1) 0;
  border-bottom:1px solid var(--ro-line)}
.rp-rows--placed .rp-row{grid-template-columns:auto minmax(0,max-content) 1fr}
@media (max-width:374px){ .rp-row{column-gap:var(--s1)} }
.rp-row__place{min-width:2ch;font-size:var(--fs-1);font-weight:900;font-variant-numeric:tabular-nums}
.rp-row__who{min-width:0}
.rp-row__who p{margin:0}
.rp-row__name{font-weight:900}
.rp-row__club{color:var(--ro-dim);font-weight:700}
.rp-row__detail{margin-top:4px !important;font-size:14px}
/* R140 (shot 03): in the Para section the line under a name is the athlete's division, not their result, so it takes the
   width the name and club give it and never widens the name column past the points beside it */
.rp-para .rp-row__detail{contain:inline-size}
.rp-row__value{margin:0;overflow-wrap:normal;font-weight:900;font-variant-numeric:tabular-nums;text-align:right}
.rp-row__value--result{white-space:nowrap}
/* R108: the Para class, its own small label after the name (a tag, not part of the name's text); words carry it, the
   outline only marks it off */
.rp-row__class{display:inline-block;padding:0 4px;border:1px solid var(--ro-dim);border-radius:var(--radius-sm);color:var(--ro-dim);
  font-size:14px;font-weight:700;line-height:1.4;vertical-align:baseline}

/* Come and Try (15 Oct, R55): the banner above the events, a neutral box with its one red link */
.rp-try{margin:0 0 var(--s2);padding:var(--s1) var(--s2);border-radius:var(--radius-sm);background:var(--ro-neutral)}
.rp-try__line{margin:0;font-weight:700}
.rp-try__link{display:inline-flex;align-items:center;min-height:44px;color:var(--ro-red);font-weight:900}
