/* Horse-Oracle — Results page component. Every selector sits under .hr so nothing fights screen.css. */
.hr{font-variant-ligatures:common-ligatures no-discretionary-ligatures no-historical-ligatures;font-feature-settings:"dlig" 0,"hlig" 0;font-family:var(--copy);color:var(--ink);background:var(--paper);font-size:18px;line-height:1.6}
.hr *{box-sizing:border-box}
.hr .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.hr .fig{font-family:var(--fig);font-stretch:var(--fig-w);font-variant-numeric:tabular-nums}
.hr .lab{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:14px;line-height:1.35;color:var(--ink-3);font-weight:500}
.hr a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
.hr a:focus-visible,.hr button:focus-visible,.hr summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:2px}
.hr[data-state="empty"] .hr-live{display:none}

/* ---------- Board: the record on night (the bold element) ---------- */
.hr-board{background:var(--night);color:var(--on-night);padding:clamp(40px,6vw,76px) 0 clamp(36px,5vw,64px)}
.hr-board__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,72px);align-items:start}
.hr-board h1{font-family:var(--display);font-weight:700;font-size:clamp(36px,4.2vw,58px);line-height:1.08;margin:0 0 20px;letter-spacing:-.005em;max-width:13ch}
.hr-board__lede{font-size:18.5px;line-height:1.6;color:var(--on-night);margin:0 0 30px;max-width:34em;opacity:.92}
.hr-tally{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--gold);margin:0}
.hr-tally div{padding:16px 16px 16px 0;border-bottom:1px solid var(--night-2)}
.hr-tally div:nth-child(2n){padding-left:18px;border-left:1px solid var(--night-2)}
.hr-tally dt{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:14px;color:var(--on-night-dim);margin:0 0 4px;font-weight:500}
.hr-tally dd{margin:0;font-family:var(--fig);font-stretch:var(--fig-w);font-variant-numeric:tabular-nums;font-weight:700;font-size:clamp(34px,3.4vw,46px);line-height:1;color:var(--on-night)}
.hr-tally dd small{display:block;font-size:15px;font-weight:500;color:var(--gold-2);margin-top:6px;line-height:1.3}
.hr-asof{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13.5px;color:var(--on-night-dim);margin:16px 0 0}

/* the form sheet: one mark per race, day by day */
.hr-sheet{margin:0}
.hr-sheet__head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;flex-wrap:wrap;margin:0 0 14px}
.hr-sheet__title{font-family:var(--display);font-size:21px;font-weight:700;margin:0}
.hr-key{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;list-style:none;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13.5px;color:var(--on-night-dim)}
.hr-key li{display:flex;align-items:center;gap:6px}
.hr-rows{display:grid;gap:5px}
.hr-row{display:grid;grid-template-columns:7.2em auto auto;justify-content:start;align-items:center;gap:12px}
.hr-row__day{font-family:var(--fig);font-stretch:var(--fig-w);font-size:14px;color:var(--on-night-dim);white-space:nowrap;font-variant-numeric:tabular-nums}
.hr-row__marks{display:flex;gap:4px;flex-wrap:nowrap}
.hr-row__sum{padding-left:10px;font-family:var(--fig);font-stretch:var(--fig-w);font-size:14px;color:var(--on-night-dim);font-variant-numeric:tabular-nums;white-space:nowrap}
.hr-row__sum b{color:var(--gold-2);font-weight:700}
.hr-row.is-new .hr-row__day{color:var(--on-night)}

.mk{--s:19px;display:inline-block;width:var(--s);height:var(--s);border-radius:2px;position:relative;flex:0 0 auto;text-decoration:none}
.mk--won{background:var(--gold)}
.mk--top3{border:1.5px solid var(--gold-2)}
.mk--top3::after{content:"";position:absolute;inset:0;margin:auto;width:5px;height:5px;border-radius:50%;background:var(--gold-2)}
.mk--out{border:1.5px solid #5d7268}
.mk--nc{border:1.5px dashed #5d7268}
.mk--nc::after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:1.5px;background:#5d7268;transform:rotate(45deg)}
a.mk:hover{outline:2px solid var(--on-night);outline-offset:1px}
.hr-key .mk{--s:14px}

/* ---------- Sections on paper ---------- */
.hr-sec{padding:clamp(48px,6vw,80px) 0;border-bottom:1px solid var(--rule)}
.hr-sec--alt{background:var(--paper-2)}
.hr-sec h2{font-family:var(--display);font-weight:700;font-size:clamp(28px,2.8vw,38px);line-height:1.15;margin:0 0 12px;max-width:22ch}
.hr-sec__lede{max-width:40em;color:var(--ink-2);margin:0 0 34px}
.hr-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px)}
.hr h3{font-family:var(--display);font-weight:700;font-size:22px;line-height:1.25;margin:0 0 6px}
.hr-q__ans{font-family:var(--display);font-style:italic;font-size:19px;color:var(--ink);margin:0 0 20px}

/* compare bars */
.hr-bars{display:grid;gap:18px;margin:0 0 22px}
.hr-bar__top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.hr-bar__name{font-family:var(--fig);font-stretch:var(--fig-wide);font-weight:600;font-size:16px}
.hr-bar__val{font-family:var(--fig);font-stretch:var(--fig-w);font-variant-numeric:tabular-nums;font-weight:700;font-size:26px;line-height:1}
.hr-bar__track{height:14px;background:var(--rule);margin:6px 0 4px;position:relative}
.hr-bar__fill{position:absolute;inset:0 auto 0 0;background:var(--ink-2)}
.hr-bar--ho .hr-bar__fill{background:var(--night)}
.hr-bar--ho .hr-bar__fill::after{content:"";position:absolute;right:0;top:-3px;bottom:-3px;width:4px;background:var(--gold)}
.hr-bar--rand .hr-bar__fill{background:transparent;border:1.5px solid var(--ink-3)}
.hr-bar__n{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13.5px;color:var(--ink-3)}
.hr-gap{border-left:3px solid var(--gold);padding:4px 0 4px 16px;margin:0;max-width:34em}
.hr-gap p{margin:0;color:var(--ink-2);font-size:16.5px}
.hr-gap svg{display:block;margin:12px 0 4px;max-width:100%}

/* calibration */
.hr-cal{display:grid;gap:16px;margin:0 0 16px}
.hr-cal__row{display:grid;grid-template-columns:8.5em 1fr;gap:14px;align-items:center}
.hr-cal__lab{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:15px;font-weight:600;line-height:1.25}
.hr-cal__lab span{display:block;font-weight:500;color:var(--ink-3);font-size:13.5px}
.hr-cal__plot{position:relative;height:30px;border-bottom:1px solid var(--rule)}
.hr-cal__said{position:absolute;top:0;bottom:0;width:2px;background:var(--ink);transform:translateX(-1px)}
.hr-cal__said::before{content:"";position:absolute;top:-1px;left:-5px;width:12px;height:2px;background:var(--ink)}
.hr-cal__got{position:absolute;left:0;top:9px;height:12px;background:var(--night)}
.hr-cal__got::after{content:"";position:absolute;right:-1px;top:-3px;bottom:-3px;width:3px;background:var(--gold)}
.hr-cal__txt{grid-column:2;font-family:var(--fig);font-stretch:var(--fig-w);font-size:14.5px;color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:-6px}
.hr-cal__axis{display:grid;grid-template-columns:8.5em 1fr;gap:14px}
.hr-cal__axis div{display:flex;justify-content:space-between;font-family:var(--fig);font-stretch:var(--fig-w);font-size:13px;color:var(--ink-3)}
.hr-legend{display:flex;gap:18px;flex-wrap:wrap;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:14px;color:var(--ink-2);margin:0 0 18px;padding:0;list-style:none}
.hr-legend li{display:flex;gap:7px;align-items:center}
.sw{display:inline-block;width:18px;height:10px;background:var(--night);position:relative}
.sw--said{width:2px;height:16px;background:var(--ink)}
.sw--ml{background:none;border-top:2px dashed var(--ink-2);height:0;width:22px}
.sw--ho{height:3px;width:22px;background:var(--gold-ink)}

/* finish strip */
.hr-finish{display:flex;width:100%;min-height:84px;margin:0 0 14px;border:1px solid var(--ink)}
.hr-finish > div{padding:10px 12px;border-right:1px solid var(--ink);min-width:0;display:flex;flex-direction:column;justify-content:space-between}
.hr-finish > div:last-child{border-right:0}
.hr-finish b{font-family:var(--fig);font-stretch:var(--fig-w);font-weight:700;font-size:26px;line-height:1;font-variant-numeric:tabular-nums}
.hr-finish span{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13.5px;line-height:1.25}
.hr-finish .f1{background:var(--night);color:var(--on-night)}
.hr-finish .f1 span{color:var(--gold-2)}
.hr-finish .f23{background:var(--paper-2)}
.hr-finish .fout{background:repeating-linear-gradient(135deg,var(--paper-2) 0 6px,var(--paper) 6px 12px)}
.hr-finish__note{font-size:16px;color:var(--ink-2);max-width:42em;margin:0}

/* running chart */
.hr-run{margin-top:clamp(40px,5vw,64px)}
.hr-run svg{width:100%;height:auto;display:block;overflow:visible}
.hr-run text{font-family:var(--fig);font-stretch:var(--fig-w);font-size:13px;fill:var(--ink-3)}
.hr-run .lbl{font-size:14px;font-weight:700;fill:var(--ink)}

/* ---------- Ledger ---------- */
.hr-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.hr-filter button{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:15px;font-weight:600;padding:8px 14px;border:1px solid var(--ink-3);background:var(--paper-2);color:var(--ink);border-radius:var(--chip-r);cursor:pointer;font-variant-numeric:tabular-nums}
.hr-filter button[aria-pressed="true"]{background:var(--night);color:var(--on-night);border-color:var(--night)}
.hr-filter button b{font-weight:700;margin-left:6px}
.hr-day{border-top:2px solid var(--ink);margin:0}
.hr-day + .hr-day{margin-top:0}
.hr-day > summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:16px 0}
.hr-day > summary::-webkit-details-marker{display:none}
.hr-day__date{font-family:var(--display);font-weight:700;font-size:20px;line-height:1.25}
.hr-day__date span{font-family:var(--fig);font-stretch:var(--fig-wide);font-weight:500;font-size:15px;color:var(--ink-3);margin-left:10px}
.hr-day__sum{font-family:var(--fig);font-stretch:var(--fig-w);font-size:16px;color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.hr-day__sum b{color:var(--ink);font-weight:700}
.hr-day__tog{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:14px;color:var(--ink-2);border:1px solid var(--rule);padding:4px 10px;border-radius:var(--chip-r);white-space:nowrap}
.hr-day[open] .hr-day__tog .o{display:none}.hr-day:not([open]) .hr-day__tog .c{display:none}
.hr-day .mk{--s:13px}
.hr-day .mk--won{background:var(--night)}
.hr-day .mk--top3{border-color:var(--ink-2)}.hr-day .mk--top3::after{background:var(--ink-2);width:4px;height:4px}
.hr-day .mk--out{border-color:#7a847e}
.hr-day .mk--nc{border-color:#7a847e}.hr-day .mk--nc::after{background:#7a847e}
.hr-day__marks{display:flex;gap:3px}

.hr-table{width:100%;border-collapse:collapse;margin:0 0 26px;table-layout:fixed}
.hr-table th:nth-child(1){width:6.5em}.hr-table th:nth-child(2){width:38%}.hr-table th:nth-child(3){width:8.5em}.hr-table th:nth-child(4){width:26%}
.hr-table th{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13.5px;font-weight:500;color:var(--ink-3);text-align:left;padding:8px 10px 8px 0;border-bottom:1px solid var(--ink-3);vertical-align:bottom}
.hr-table td{padding:14px 10px 14px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.hr-table tr.is-won td:first-child{box-shadow:inset 4px 0 0 var(--gold)}
.hr-table td.c-race{padding-left:12px;width:5.5em}
.hr-table td.c-race b{display:block;font-family:var(--fig);font-stretch:var(--fig-w);font-weight:700;font-size:20px;line-height:1}
.hr-table td.c-race span{font-family:var(--fig);font-stretch:var(--fig-w);font-size:14px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.hr-horse{display:flex;gap:9px;align-items:flex-start}
.hr-horse__name{font-family:var(--display);font-weight:700;font-size:17.5px;line-height:1.3}
.hr-horse__meta{display:block;font-family:var(--fig);font-stretch:var(--fig-w);font-size:14px;color:var(--ink-2);font-variant-numeric:tabular-nums;font-weight:500}
.chip{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 4px;border-radius:var(--chip-r);font-family:var(--fig);font-stretch:var(--fig-w);font-weight:800;font-size:15px;line-height:1;flex:0 0 auto;margin-top:1px}
.chip[data-n="2"],.chip[data-n="19"]{box-shadow:inset 0 0 0 1px var(--ink)}
.hr-out{font-family:var(--fig);font-stretch:var(--fig-w);font-weight:700;font-size:20px;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap}
.hr-out small{display:block;font-weight:500;font-size:14px;color:var(--ink-3);font-stretch:var(--fig-wide)}
.is-won .hr-out{color:var(--gold-ink)}
.hr-filed{font-family:var(--fig);font-stretch:var(--fig-w);font-size:14px;color:var(--ink-3);font-variant-numeric:tabular-nums;display:block;line-height:1.4}
.hr-note{display:block;font-size:15.5px;line-height:1.5;color:var(--ink-2);margin-top:6px;font-style:italic;max-width:38em}
.hr-table tr.is-nc td{color:var(--ink-3)}
.hr-table tr.is-nc .c-pick .hr-horse__name{text-decoration:line-through;text-decoration-thickness:1.5px;color:var(--ink-2)}
.hr-table tr[hidden]{display:none}
.hr-empty{font-style:italic;color:var(--ink-2);padding:6px 0 24px;margin:0}

/* ---------- Rules ---------- */
.hr-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 40px;margin:0 0 40px;padding:0;list-style:none}
.hr-rules li{border-top:1px solid var(--ink);padding-top:14px}
.hr-rules h3{font-size:19px}
.hr-rules p{margin:0;font-size:16.5px;color:var(--ink-2);line-height:1.55}
.hr-receipt{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;background:var(--night);color:var(--on-night);padding:20px 24px}
.hr-receipt a{font-family:var(--fig);font-stretch:var(--fig-wide);font-weight:600;font-size:16px;color:var(--night);background:var(--gold);padding:10px 16px;border-radius:var(--chip-r);text-decoration:none}
.hr-receipt p{margin:0;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:14px;color:var(--on-night-dim);line-height:1.5}
.hr-receipt code{font-family:var(--fig);font-stretch:var(--fig-w);color:var(--on-night);word-break:break-all}

/* ---------- Phone ---------- */
@media (max-width:899px){
  .hr-board__grid,.hr-two{grid-template-columns:1fr}
  .hr-rules{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .hr{font-size:17px;overflow-wrap:anywhere}
  .hr-board{padding-top:34px}
  .hr-board h1{font-size:clamp(34px,10vw,46px);max-width:15ch}
  .hr-range{max-width:100%}
  .hr-range button{min-height:44px;padding-inline:12px}
  .hr-row{grid-template-columns:5.6em minmax(0,1fr);gap:8px}
  .hr-row__marks{flex-wrap:wrap;min-width:0}
  .hr-row__sum{display:none}
  .mk{--s:15px}.hr-row__marks{gap:3px}
  .hr-tally dd{font-size:34px}
  .hr-finish{flex-wrap:wrap}
  .hr-finish > div{flex:1 1 33% !important;border-bottom:1px solid var(--ink)}
  .hr-rules{grid-template-columns:1fr}
  .hr-day > summary{grid-template-columns:1fr auto;gap:6px 12px}
  .hr-day__marks{grid-column:1/-1;flex-wrap:wrap}
  .hr-day__sum{grid-column:1}
  .hr-table thead{display:none}
  .hr-table,.hr-table tbody,.hr-table tr,.hr-table td{display:block;width:100%}
  .hr-table tr{display:grid;grid-template-columns:3.6em minmax(0,1fr) auto;padding:14px 0 14px;border-bottom:1px solid var(--rule)}
  .hr-table td{border:0;padding:0;min-width:0}
  .hr-table td.c-race{grid-row:1/span 3;padding-left:10px;width:auto}
  .hr-table td.c-pick{grid-column:2;overflow-wrap:anywhere}
  .hr-table td.c-out{grid-column:3;grid-row:1;text-align:right}
  .hr-table td.c-win{grid-column:2/-1;margin-top:10px;overflow-wrap:anywhere}
  .hr-table td.c-win::before{content:attr(data-l);display:block;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13px;color:var(--ink-3)}
  .hr-table td.c-filed{grid-column:2/-1;margin-top:8px}
  .hr-cal__row,.hr-cal__axis{grid-template-columns:6.2em minmax(0,1fr)}
  .hr-receipt{align-items:stretch;padding:18px}
  .hr-receipt a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
}
@media (prefers-reduced-motion:no-preference){.hr-bar__fill,.hr-cal__got{transition:width .6s ease}}
@media (prefers-reduced-motion:reduce){.hr-bar__fill,.hr-cal__got{transition:none !important}}
@media print{.hr-filter,.hr-day__tog{display:none}.hr-board,.hr-receipt,.hr-finish .f1{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.hr-q__ans,.hr-note,.hr i,.hr em{font-variant-ligatures:none;font-feature-settings:"liga" 0,"dlig" 0,"hlig" 0}
.hr-sec h2 + .hr-finish{margin-top:22px}
.hr-note--fix{font-style:normal;color:var(--ink);border-left:3px solid var(--ink-3);padding-left:8px}

/* ---------- v1.2 ---------- */
.hr-range{display:inline-flex;border:1px solid var(--on-night-dim);border-radius:var(--chip-r);margin:0 0 18px;overflow:hidden}
.hr-range button{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:15px;font-weight:600;padding:8px 16px;background:transparent;color:var(--on-night);border:0;cursor:pointer}
.hr-range button + button{border-left:1px solid var(--on-night-dim)}
.hr-range button[aria-pressed="true"]{background:var(--gold);color:var(--night)}
.hr-range button:focus-visible{outline:3px solid var(--gold-2);outline-offset:-3px}
.hr-cal__ci{position:absolute;top:5px;height:20px;background:rgba(195,164,90,.28);border-left:1px solid var(--gold-ink);border-right:1px solid var(--gold-ink)}
.sw--ci{background:rgba(195,164,90,.28);border-left:1px solid var(--gold-ink);border-right:1px solid var(--gold-ink);height:14px}
.hr-comp{margin:22px 0 0;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:16px;font-weight:600}
.hr-link{display:inline-block;margin-top:6px;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:14px;font-weight:600;color:var(--ink)}
.hr-recap{margin:0 0 10px;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:15px;font-weight:600}
.hr-splits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 44px}
.hr-split h3{border-top:2px solid var(--ink);padding-top:12px;margin-bottom:14px}
.hr-split__row{display:grid;gap:6px;margin:0 0 18px}
.hr-split__lab{font-family:var(--display);font-weight:700;font-size:17px;line-height:1.3}
.hr-split__lab span{font-family:var(--fig);font-stretch:var(--fig-wide);font-weight:500;font-size:14px;color:var(--ink-3);margin-left:8px}
.hr-split__bars{display:grid;gap:4px}
.hr-split__bar{display:grid;grid-template-columns:1fr 3.6em;grid-template-rows:auto auto;align-items:center;column-gap:10px}
.hr-split__bar i{display:block;height:10px;background:var(--night);grid-column:1;grid-row:1;max-width:100%}
.hr-split__bar.is-ml i{background:none;border-top:2px dashed var(--ink-2);height:0}
.hr-split__bar b{grid-column:2;grid-row:1;font-family:var(--fig);font-stretch:var(--fig-w);font-variant-numeric:tabular-nums;font-size:17px;text-align:right}
.hr-split__bar.is-ml b{font-weight:500;color:var(--ink-2)}
.hr-split__bar em{grid-column:1/-1;grid-row:2;font-style:normal;font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13px;color:var(--ink-3)}
.hr-split__ci{font-family:var(--fig);font-stretch:var(--fig-wide);font-size:13px;color:var(--ink-3)}
@media (max-width:899px){.hr-splits{grid-template-columns:1fr}}
