/* GalawGo! Race-to-Ready — loaded only on /event/{slug}/ready/ pages (plus the small event/account blocks at the bottom, which live in main.css). */
.r2r-root{min-height:60vh;transition:opacity .15s} .r2r-root.is-busy{cursor:progress}
.r2r-bar{background:var(--ink-2);color:var(--paper);border-bottom:1px solid #26271f;position:sticky;top:0;z-index:15}
.r2r-bar__in{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.r2r-bar__ev{font:500 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--lime);padding:14px 0} .r2r-bar__ev:hover{color:var(--paper)}
.r2r-tabs{display:flex;gap:2px;flex:1;flex-wrap:wrap}
.r2r-tabs a{color:#8b8d82;font:700 15px var(--f-body);padding:13px 14px 11px;border-bottom:3px solid transparent} .r2r-tabs a:hover{color:var(--paper)}
.r2r-tabs a.is-on{color:var(--paper);border-color:var(--lime)}
.r2r-bar__cd{font:500 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#8b8d82} .r2r-bar__cd b{font-weight:500;color:var(--paper)}
.r2r-disclaim{font:500 12px/1.6 var(--f-mono);letter-spacing:.04em;color:var(--mut);padding-top:8px;padding-bottom:40px;max-width:var(--wrap)}
.r2r-flash{margin:20px 0 0}

.r2r-h1{margin:0;font:800 italic clamp(44px,6vw,80px)/.88 var(--f-disp);text-transform:uppercase;text-wrap:balance}
.r2r-h2{margin:0;font:800 italic 40px/1 var(--f-disp);text-transform:uppercase}
.r2r-h3{display:block;font:800 italic 26px/1 var(--f-disp);text-transform:uppercase}
.r2r-sub{margin:0;font-size:17px;color:var(--mut)}
.r2r-rust{color:var(--rust)}
.r2r-small{font-size:14px}
.r2r-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.r2r-link{border:0;background:none;padding:0;cursor:pointer;font:700 14px var(--f-body);text-decoration:underline;color:var(--ink)}
.r2r-link--mut{color:var(--mut);font-weight:600} .r2r-link--d{color:#8b8d82;font-weight:600}
.r2r-input{width:100%;font:600 15px var(--f-body);padding:10px;border:1.5px solid var(--line-2);border-radius:var(--r);background:var(--white);color:var(--ink);text-transform:none;letter-spacing:0}
textarea.r2r-input{resize:vertical;font-weight:500}
.r2r-big{font:800 italic 22px var(--f-disp);text-transform:uppercase;padding:14px 26px}
.ha-btn.is-off{background:var(--line);color:var(--mut-2);cursor:not-allowed}
.r2r-meter{height:8px;background:var(--line);border-radius:1px;overflow:hidden} .r2r-meter i{display:block;height:100%;background:var(--ink)}
.r2r-note{background:var(--white);border:1.5px dashed var(--line-2);border-radius:6px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.r2r-note p{margin:0;font:500 14px/1.5 var(--f-body);color:#33352d}
.r2r-card{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:20px;display:flex;flex-direction:column;gap:12px}
.r2r-card p{margin:0;font:500 15px/1.5 var(--f-body)}
.r2r-card--ink{background:var(--ink);color:var(--paper);border-color:var(--ink)} .r2r-card--ink p{color:var(--mut-d)}
.r2r-kv{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #efeee8;padding-bottom:8px} .r2r-kv .ha-label{padding-top:3px} .r2r-kv b{font:600 15px var(--f-body);text-align:right}
.r2r-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center} .r2r-tags .ha-label{width:100%}
.r2r-tags span:not(.ha-label){background:var(--white);border:1px solid var(--line);border-radius:2px;padding:6px 11px;font:600 14px var(--f-body)}
fieldset.r2r-field{border:0;padding:0;margin:0;min-width:0}
.r2r-opt--radio{position:relative;cursor:pointer} .r2r-opt--radio input{position:absolute;opacity:0;pointer-events:none}
.r2r-opt--radio:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--paper)} .r2r-opt--radio:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:2px}
.r2r-stations{display:flex;flex-direction:column;gap:8px}
.r2r-stations ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));gap:6px}
.r2r-stations li{background:var(--white);border:1px solid var(--line);border-radius:4px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}
.r2r-stations li small{font:500 10px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.r2r-stations__n{font:800 22px/1 var(--f-disp);color:var(--rust)}
.r2r-stations li b{font:700 17px/1.1 var(--f-disp);text-transform:uppercase}
.r2r-stations li span:not(.r2r-stations__n){font:600 14px var(--f-body)}
.r2r-save{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--lime);border-radius:6px;padding:14px 18px;font:600 15px var(--f-body)} .r2r-save a{text-decoration:underline;font-weight:700}

/* quiz */
.r2r-quiz{max-width:830px;padding-top:40px;padding-bottom:72px;display:flex;flex-direction:column;gap:20px}
.r2r-back{align-self:flex-start;border:0;background:none;padding:0;cursor:pointer;font:600 15px var(--f-body);color:var(--mut)}
.r2r-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px} .r2r-steps i{height:6px;border-radius:1px;background:#dcdbd3} .r2r-steps i.is-on{background:var(--ink)}
.r2r-stack{display:flex;flex-direction:column;gap:10px;margin-top:8px} .r2r-stack--lg{gap:26px}
.r2r-opt{border:2px solid var(--line);background:var(--white);color:var(--ink);border-radius:6px;cursor:pointer;text-align:left;font:600 16px var(--f-body);padding:14px 16px}
.r2r-opt:hover{border-color:var(--ink)} .r2r-opt.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.r2r-opt--big{padding:18px 20px;display:flex;flex-direction:column;gap:4px} .r2r-opt--big b{font:700 26px/1 var(--f-disp);text-transform:uppercase} .r2r-opt--big small{font:500 15px var(--f-body);color:var(--mut)} .r2r-opt--big.is-on small{color:var(--mut-d)}
.r2r-opt--day{border-radius:4px;padding:14px 0;text-align:center;font:800 22px var(--f-disp);text-transform:uppercase}
.r2r-opt--chip{border-radius:20px;padding:10px 18px;font-size:15px}
.r2r-field{display:flex;flex-direction:column;gap:10px} .r2r-field>b,.r2r-field__h b{font:700 17px var(--f-body)}
.r2r-field__h{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.r2r-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px}
.r2r-chips{display:flex;gap:8px;flex-wrap:wrap}
.r2r-grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.r2r-ack{border:2px solid var(--ink);background:var(--white);border-radius:6px;padding:16px 18px;display:flex;gap:14px;align-items:flex-start;cursor:pointer;text-align:left;color:var(--ink)}
.r2r-ack i,.r2r-check i,.r2r-tick{width:24px;height:24px;flex:none;border:2px solid var(--ink);border-radius:3px;background:var(--white);display:flex;align-items:center;justify-content:center;font:700 14px var(--f-body);font-style:normal;color:var(--ink)}
.r2r-ack.is-on i,.r2r-check.is-on i{background:var(--lime)}
.r2r-ack span{font:500 15px/1.5 var(--f-body);color:#33352d}
.r2r-quiz__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid #dcdbd3;padding-top:20px;margin-top:8px}

/* plan */
.r2r-layout{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start;padding-top:40px;padding-bottom:40px}
.r2r-main{flex:1 1 620px;min-width:0;display:flex;flex-direction:column;gap:24px}
.r2r-aside{flex:0 1 340px;min-width:280px;display:flex;flex-direction:column;gap:16px;margin:0 auto}
@media(min-width:960px){.r2r-aside{position:sticky;top:120px}}
.r2r-head{display:flex;flex-direction:column;gap:10px}
.r2r-weeks{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}
.r2r-wk{border:2px solid var(--line);background:var(--white);color:var(--ink);border-radius:4px;padding:8px 6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px}
.r2r-wk small{font:500 10px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut)} .r2r-wk b{font:800 24px/1 var(--f-disp)}
.r2r-wk.is-done{background:var(--lime)} .r2r-wk.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)} .r2r-wk.is-on small{color:var(--lime)}
.r2r-phase{display:flex;flex-direction:column;gap:6px;border-bottom:3px solid var(--ink);padding-bottom:12px}
.r2r-phase>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.r2r-list{display:flex;flex-direction:column;gap:10px}
.r2r-sess{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:16px 18px;display:grid;grid-template-columns:auto 64px minmax(0,1fr) auto;gap:16px;align-items:start}
.r2r-sess.is-done{border-color:var(--ink)}
.r2r-tick{width:30px;height:30px;cursor:pointer;padding:0;font-size:16px} .r2r-sess.is-done .r2r-tick{background:var(--lime)}
.r2r-sess__day{font:800 26px/1.05 var(--f-disp);text-transform:uppercase;display:flex;flex-direction:column} .r2r-sess__day small{font:500 10px var(--f-mono);letter-spacing:.06em;color:var(--mut)}
.r2r-sess__b{display:flex;flex-direction:column;gap:4px;min-width:0} .r2r-sess__b b{font:700 20px/1.1 var(--f-disp);text-transform:uppercase} .r2r-sess__b span{font:500 15px/1.45 var(--f-body);color:#33352d} .r2r-sess__b small{font:500 11px/1.5 var(--f-mono);letter-spacing:.04em;color:var(--mut);text-transform:uppercase}
.r2r-sess__m{font:800 22px var(--f-disp);text-transform:uppercase;white-space:nowrap}
@media(max-width:560px){.r2r-sess{grid-template-columns:auto minmax(0,1fr);gap:10px 14px}.r2r-sess__b{grid-column:1/-1}.r2r-sess__m{grid-column:2;grid-row:1;justify-self:end}.r2r-sess__day{grid-column:2;grid-row:1}}

/* buddies + crews */
.r2r-sec{padding-top:40px;padding-bottom:40px;display:flex;flex-direction:column;gap:40px}
.r2r-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px}
.r2r-h3row{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;border-bottom:3px solid var(--ink);padding-bottom:10px;margin-bottom:14px} .r2r-h3row .ha-h3{border:0;padding:0;margin:0}
.r2r-inbox{background:var(--ink);color:var(--paper);border-radius:6px;padding:20px 22px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.r2r-inbox>div:first-child{display:flex;flex-direction:column;gap:6px} .r2r-inbox b{font:700 26px/1 var(--f-disp);text-transform:uppercase} .r2r-inbox span:not(.ha-label){color:var(--mut-d);font-weight:500}
.r2r-buddy{background:var(--white);border:1px solid var(--line);border-top:10px solid var(--lime);padding:18px;display:flex;flex-direction:column;gap:6px}
.r2r-buddy>span:not(.ha-label){font:600 15px var(--f-body)} .r2r-buddy .ha-btn,.r2r-buddy .r2r-row{margin-top:8px}
.r2r-buddy__n{font:800 italic 44px/.85 var(--f-disp);text-transform:uppercase;margin:4px 0}
.r2r-buddy.is-ok{background:var(--ink);color:var(--paper);border-color:var(--ink) var(--ink) var(--ink)}
.r2r-msg{display:flex;flex-direction:column;gap:8px;margin-top:8px} .r2r-msg small{color:var(--mut-d);font-size:13px}
.r2r-crew{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:20px;display:flex;flex-direction:column;gap:8px;text-align:left;color:var(--ink);font:500 15px var(--f-body)}
.r2r-crew .ha-btn{margin-top:auto} .r2r-crew>span:not(.ha-label){font-weight:600} .r2r-crew.is-mine{border:2px solid var(--ink)}
.r2r-crew__n{font:700 26px/1 var(--f-disp);text-transform:uppercase}
.r2r-crew--add{border:1.5px dashed var(--line-2);background:transparent;cursor:pointer} .r2r-crew--add:hover{border-color:var(--ink)}
.r2r-crew--form label{display:flex;flex-direction:column;gap:6px}
.r2r-optin{max-width:640px}
.r2r-gate{max-width:640px;display:flex;flex-direction:column;gap:16px} .r2r-gate p{margin:0;font:400 17px/1.55 var(--f-body);color:#33352d;text-wrap:pretty}
.r2r-report{border:2px solid var(--ink)}
.r2r-crewhead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap} .r2r-crewhead>div:first-child{display:flex;flex-direction:column;gap:10px}
.r2r-cols{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.r2r-col{flex:1 1 560px;min-width:0;display:flex;flex-direction:column;gap:14px} .r2r-col--side{flex:1 1 340px;min-width:280px;gap:32px}
.r2r-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;border:2px solid var(--ink)} .r2r-form label{display:flex;flex-direction:column;gap:6px}
.r2r-form__foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.r2r-meet{background:var(--white);border:1px solid var(--line);border-radius:6px;padding:16px 18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}
.r2r-meet>div{display:flex;flex-direction:column;gap:4px} .r2r-meet b{font:700 22px/1.05 var(--f-disp);text-transform:uppercase} .r2r-going{color:var(--lime)}
.r2r-check{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 0;display:flex;gap:12px;align-items:center;cursor:pointer;text-align:left;color:var(--ink)}
.r2r-check span{flex:1;display:flex;justify-content:space-between;gap:12px;font:600 15px var(--f-body)} .r2r-check small{font:500 11px var(--f-mono);color:var(--mut-2)}
.r2r-add{margin-top:8px;flex-wrap:nowrap} .r2r-add .r2r-input{flex:1;min-width:0}
.r2r-ms{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:12px;align-items:start;padding:8px 0}
.r2r-ms i{width:14px;height:14px;border-radius:50%;background:var(--white);border:3px solid var(--ink);margin-top:4px} .r2r-ms.is-on i{background:var(--lime)}
.r2r-ms span{display:flex;flex-direction:column;gap:2px} .r2r-ms b{font:700 16px var(--f-body)} .r2r-ms small{font:500 13px var(--f-body);color:var(--mut)}

/* race day */
.r2r-racehero{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:40px;align-items:center;padding-top:40px;padding-bottom:56px}
.r2r-racehero>div:first-child{display:flex;flex-direction:column;gap:16px}
.r2r-cd{display:flex;gap:28px;flex-wrap:wrap} .r2r-cd div{display:flex;flex-direction:column;line-height:1} .r2r-cd b{font:800 64px var(--f-disp);color:var(--lime)} .r2r-cd small{font:500 11px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:#8b8d82}
.r2r-score{border-top-width:14px;transform:rotate(-1.5deg);max-width:420px;width:100%;justify-self:center;box-shadow:0 30px 60px -20px rgba(0,0,0,.7)} .r2r-score:hover{transform:rotate(-1.5deg)}
.r2r-score b{font:800 italic clamp(96px,13vw,156px)/.8 var(--f-disp)}
.r2r-sched{display:grid;grid-template-columns:84px 20px minmax(0,1fr);gap:10px;align-items:start;padding:4px 0}
.r2r-sched b{font:800 19px var(--f-disp)} .r2r-sched i{width:12px;height:12px;border-radius:50%;background:var(--lime);border:3px solid var(--ink);margin-top:5px}
.r2r-sched span{font:600 15px var(--f-body);display:flex;flex-direction:column} .r2r-sched small{font-weight:500;color:var(--mut)}
.r2r-src{line-height:1.6;padding-top:8px;border-top:1px solid #efeee8}
