:root{color-scheme:light;--navy: #0b1c33;--navy-ink: #16324f;--teal: #0f7c7b;--sand: #f4efe6;--paper: #fffdf8;--line: #d7cfc0;--text: #1c2430;--muted: #5c6570;--gold: #e3b341;--silver: #9aa4b2;--bronze: #c47a4a;--danger: #b42318;font-family:Segoe UI,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--sand);color:var(--text)}a{color:var(--teal)}.app{max-width:720px;margin:0 auto;padding:0 0 4rem}.hero{background:linear-gradient(160deg,var(--navy),var(--navy-ink));color:#fff;padding:calc(1rem + env(safe-area-inset-top)) 1rem 1.25rem}.hero-brand{display:flex;gap:.85rem;align-items:center}.logo{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:12px;padding:.2rem}.eyebrow,.status,.summary,.race-meta,.race-count span,.result em,.result small,.codes li{color:inherit}.eyebrow{margin:0;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;color:#d7e3ef}.hero h1,.race h2,.codes h2{margin:.15rem 0 .35rem;font-size:1.25rem;line-height:1.25}.status{margin:0;color:#c5d4e2;font-size:.9rem}.hero-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.9rem}.hero-links a{color:#9ee7e0;font-size:.9rem}.toolbar,main{padding:.9rem 1rem 0}.search input,.chip,.segmented button,.toggle,.race-head,.result>button{font:inherit}.search input{width:100%;border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:.85rem .9rem;font-size:1rem}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin:.8rem 0}.segmented button,.chip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:.65rem .9rem}.segmented button.active,.chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.chips{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.35rem;-webkit-overflow-scrolling:touch}.chip{white-space:nowrap}.toggle{display:flex;align-items:center;gap:.5rem;margin:.7rem 0 .2rem;color:var(--muted);font-size:.95rem}.summary,.message{color:var(--muted);font-size:.95rem}.message.error{color:var(--danger);background:#fde8e6;padding:.8rem;border-radius:10px}.race{background:var(--paper);border:1px solid var(--line);border-radius:16px;margin:.75rem 0;overflow:hidden}.race-head{width:100%;display:flex;justify-content:space-between;gap:.75rem;text-align:left;background:transparent;border:0;padding:.9rem 1rem}.race-code{margin:0;color:var(--teal);font-weight:700;font-size:.8rem}.scoring-pill{display:inline-flex;margin-left:.4rem;min-width:1.3rem;justify-content:center;border-radius:999px;background:var(--sand);color:var(--navy);font-size:.75rem;padding:0 .35rem}.race-meta{margin:.25rem 0 0;color:var(--muted);font-size:.8rem}.race-count{margin:0;text-align:right;font-weight:700;color:var(--navy)}.race-count span{display:block;font-weight:500;color:var(--muted);font-size:.75rem}.results{list-style:none;margin:0;padding:0 .55rem .55rem}.result{border-top:1px solid var(--line)}.result>button{width:100%;display:grid;grid-template-columns:2.6rem 1fr auto;gap:.55rem;align-items:center;background:transparent;border:0;padding:.7rem .35rem;text-align:left}.rank{width:2.4rem;height:2.4rem;display:grid;place-items:center;border-radius:999px;background:#e8eef5;font-weight:700;font-size:.85rem}.rank.gold{background:var(--gold)}.rank.silver{background:var(--silver);color:#fff}.rank.bronze{background:var(--bronze);color:#fff}.result.coded .rank{background:#f4d6d2;color:var(--danger);font-size:.7rem}.who{display:flex;flex-direction:column;min-width:0}.who strong{font-size:.98rem}.who em{color:var(--muted);font-style:normal;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.times{display:grid;justify-items:end;gap:.1rem;font-variant-numeric:tabular-nums;font-size:.82rem}.times small{display:block;color:var(--muted);font-size:.65rem}.points{font-weight:700;color:var(--navy)}.result dl{display:grid;grid-template-columns:1fr 1fr;gap:.45rem .7rem;margin:0;padding:0 .7rem .8rem 3.3rem;color:var(--muted);font-size:.82rem}.result dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.result dd{margin:.1rem 0 0;color:var(--text)}.race-scores{display:grid;grid-template-columns:repeat(auto-fill,minmax(3.4rem,1fr));gap:.35rem;list-style:none;margin:0;padding:0 .7rem .85rem 3.3rem}.race-scores li{background:var(--sand);border-radius:8px;padding:.35rem .25rem;text-align:center;font-variant-numeric:tabular-nums;font-size:.82rem}.race-scores small{display:block;color:var(--muted);font-size:.62rem}.race-scores .discarded{color:var(--muted);text-decoration:line-through}.codes{padding:.5rem 0 2rem}.codes ul{padding-left:1.1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(min-width:720px){.hero,.toolbar,main{padding-left:1.4rem;padding-right:1.4rem}.hero h1{font-size:1.6rem}}
