:root{--accent:#292929;--ink:#262626;--muted:#686868;--line:#ddd;--paper:#f7f7f7;--selected:#f1f1f1;--button:#d1d1d1}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.6}a{color:var(--accent)}header{background:#f2f2f2;justify-content:space-between;align-items:center;gap:16px;max-width:1120px;min-height:60px;margin:auto;padding:4px 32px;display:flex}.brand-signature{flex-shrink:0;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.brand-logo-square{place-items:center;width:80px;height:80px;padding:0;display:grid}.brand-logo{object-fit:contain;mix-blend-mode:darken;width:100%;height:100%;display:block}.brand-slogan{text-align:right;white-space:nowrap;color:var(--muted);margin:0;font-size:11px;font-weight:400;line-height:1.3}.brand-slogan span{margin-top:2px;font-size:11px;display:block}main{width:min(100% - 40px,600px);margin:42px auto 36px}.eyebrow{letter-spacing:1.8px;color:var(--accent);margin:0 0 13px;font-size:10px;font-weight:500}h1{letter-spacing:-.8px;overflow-wrap:anywhere;margin:0 0 13px;font-size:32px;font-weight:500;line-height:1.25}h2{margin:0;font-size:20px;font-weight:500}.intro{max-width:490px;color:var(--muted);margin:0 0 28px;font-size:14px;line-height:1.75}.card{background:#fff;border:0;border-radius:4px;padding:30px 32px}form{flex-direction:column;gap:26px;margin-top:26px;display:flex}label,legend{margin:0 0 9px;padding:0;font-size:14px;font-weight:500;line-height:1.5;display:block}fieldset{border:0;min-width:0;margin:0;padding:0}.bilingual{min-width:0;display:block}.label-primary{color:var(--ink);display:block}.label-secondary{color:var(--muted);margin-top:3px;font-size:12px;font-weight:400;line-height:1.6;display:block}.required-mark{color:var(--accent);margin-left:2px;font-size:12px}.optional{color:var(--muted);white-space:nowrap;margin-left:6px;font-size:11px;font-weight:400}input,select,textarea{border:1px solid var(--line);width:100%;min-width:0;min-height:46px;color:var(--ink);font:inherit;background:#fff;border-radius:7px;padding:10px 12px;font-size:16px;line-height:1.5;display:block}input::placeholder,textarea::placeholder{color:#858585;opacity:1}textarea{resize:vertical;min-height:92px}input:hover,select:hover,textarea:hover{border-color:#ababab}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline-offset:2px;outline:2px solid #d5d5d5}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #777}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#454545}button,.button{background:var(--button);width:100%;min-height:48px;color:var(--ink);font:inherit;text-align:center;cursor:pointer;border:1px solid #0000;border-radius:7px;padding:12px 18px;font-size:14px;font-weight:500;line-height:1.6;text-decoration:none;display:block}button:hover,.button:hover{background:#c4c4c4}button:disabled{opacity:.6;cursor:wait}.secondary{border-color:var(--line);color:var(--accent);background:#fff;margin-top:12px}.secondary:hover{background:var(--paper)}.hint,.footnote{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.footnote{text-align:center;max-width:440px;margin:22px auto 0}.field-hint-after{margin:8px 0 0}.member-reminder,.success .member-link-warning{color:#b32626;text-align:center;margin-left:auto;margin-right:auto}.member-reminder{font-weight:600}.member-link-warning span{display:block}.member-link-warning span+span{margin-top:6px}.field-hint{margin:-2px 0 10px}.hint .label-primary{color:var(--muted)}.hint .label-secondary{margin-top:2px}form>.hint{margin-top:-16px}.choices{gap:10px;display:flex}.choice{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:12px;width:50%;min-height:66px;margin:0;padding:12px 14px;display:flex}.choice:hover{border-color:#999}.choice:focus-within{outline-offset:2px;outline:2px solid #d5d5d5}.choice input{accent-color:#626262;flex:0 0 18px;width:18px;height:18px;min-height:0;margin:0;padding:0}.choice .bilingual{flex:1}.choice .label-primary{font-size:14px;font-weight:500;line-height:1.55}.choice .label-secondary{margin-top:3px}.selected{background:var(--selected);border-color:#777}select:has(option:checked:not([value=""])){background:var(--selected);border-color:#777}.registration-options{gap:9px;display:grid}.registration-options .choice{align-items:flex-start;width:100%;padding:14px}.registration-options .choice input{margin-top:3px}.identity{margin:0 0 27px;font-size:14px;font-weight:500}.identity span{color:var(--muted);font-weight:400}.agreement-choice{cursor:pointer;align-items:flex-start;gap:12px;min-height:48px;margin:0;padding:5px 0;display:flex}.agreement-choice input{accent-color:#626262;flex:0 0 19px;width:19px;height:19px;min-height:0;margin:3px 0 0;padding:0}.agreement-copy .label-primary{font-size:13px;font-weight:400;line-height:1.75}.agreement-copy .label-secondary{margin-top:7px;font-size:12px;line-height:1.8}input[type=file]{color:var(--muted);padding:7px;font-size:12px}input[type=file]::file-selector-button{min-height:32px;color:var(--accent);font:inherit;cursor:pointer;background:#eee;border:0;border-radius:4px;margin-right:10px;padding:5px 11px;font-weight:500}#proof-image-status{margin-top:8px}.error{color:#404040;margin:6px 0 0;font-size:12px;font-weight:400;line-height:1.6;display:block}.notice{background:#f5f5f5;border:1px solid #bdbdbd;border-radius:7px;padding:12px 14px}.success{text-align:center;padding:36px 32px}.success h1{font-size:30px;font-weight:500}.success>p{color:var(--muted);margin:0;font-size:14px}.success .eyebrow{color:var(--muted);margin:0 0 18px;font-size:10px}.check{width:30px;height:30px;color:var(--accent);background:#eee;border-radius:50%;place-items:center;margin:0 auto 14px;font-size:17px;display:grid}.member-card{border-top:1px solid #ededed;border-bottom:1px solid #ededed;margin:27px 0;padding:20px 0}.member-card span{color:var(--muted);font-size:12px}.member-card strong{letter-spacing:2px;font-variant-numeric:tabular-nums;margin-top:5px;font-size:29px;font-weight:500;display:block}.success .footnote{margin-top:22px;font-size:12px}.success .hint{margin-top:8px;font-size:12px}.success .hint:empty{display:none}.success .button{margin-top:24px}footer{text-align:center;color:var(--muted);letter-spacing:.15px;padding:30px 20px;font-size:11px}@media (max-width:480px){header{gap:8px;min-height:52px;padding:4px 16px}.brand-logo-square{width:68px;height:68px}.brand-slogan,.brand-slogan span{font-size:10px}.member-reminder span{display:block}main{width:calc(100% - 32px);margin-top:26px}h1{letter-spacing:-.6px;font-size:28px}.intro{margin-bottom:24px;font-size:13px}.card{border-radius:4px;padding:23px 20px}.success{padding:29px 22px}.success h1{font-size:28px}.success .member-link-warning{max-width:none;margin-left:-12px;margin-right:-12px;font-size:clamp(9px,2.8vw,12px)}.member-link-warning span{white-space:nowrap}.choice{gap:10px;padding:12px}.registration-options .choice{padding:13px 12px}.registration-options .label-primary{font-size:13px}}@media (max-width:389px){.brand-logo-square{width:62px;height:62px}.brand-slogan,.brand-slogan span{font-size:9.5px}}@media (max-width:359px){header{padding-left:12px;padding-right:12px}.brand-logo-square{width:52px;height:52px}.brand-slogan,.brand-slogan span{font-size:8.5px}}.pin-receipt{text-align:center;margin:22px 0}.pin-receipt>span{color:var(--muted);font-size:12px}.pin-receipt>strong{letter-spacing:5px;font-variant-numeric:tabular-nums;font-size:28px;font-weight:500;display:block}.success .pin-receipt .hint{margin-top:12px}main:has(.dashboard){width:min(100% - 64px,880px)}.dashboard-top{margin-bottom:30px}.dashboard-top h1{font-size:36px}.dashboard-ctas{gap:12px;max-width:400px;margin-top:24px;display:flex}.headline-numbers{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0 0 36px;display:grid}.headline-numbers>div{flex-direction:column-reverse;align-items:flex-start;display:flex}.headline-numbers dt{letter-spacing:1px;color:var(--muted);font-size:10px}.headline-numbers dd{letter-spacing:-1.5px;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(30px,4vw,46px);font-weight:500;line-height:1.4}.headline-numbers small{letter-spacing:0;color:var(--muted);font-size:12px}.dashboard-section{border-top:1px solid var(--line);padding:23px 0}.dashboard-section h2{letter-spacing:1.4px;margin-bottom:16px;font-size:12px}.dashboard ul,.dashboard ol{margin:0;padding:0;list-style:none}.dashboard .empty{color:var(--muted);margin:0;font-size:13px}.compact-list li{justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;font-size:14px;display:flex}.compact-list small{color:var(--muted);white-space:nowrap;font-size:10px}.dashboard strong{font-weight:500}.welcome p{overflow-wrap:anywhere;margin:0;font-size:15px}.month-tabs{gap:8px;margin:0 0 12px;display:flex}.month-tabs button{letter-spacing:.6px;border-color:var(--line);background:#fff;width:auto;min-height:40px;padding:8px 13px;font-size:10px}.month-tabs button[aria-selected=true]{background:var(--selected);border-color:#777}.active-list li{grid-template-columns:28px 1fr auto;gap:12px;padding:5px 0;font-size:14px;display:grid}.rank,.days{font-variant-numeric:tabular-nums;color:var(--muted)}.rank{align-self:center;font-size:12px}.race-event+.race-event{margin-top:18px}.event-title{align-items:baseline;gap:12px;margin-bottom:5px;display:flex}.event-title time{color:var(--muted);text-transform:uppercase;white-space:nowrap;font-size:10px}.event-title h3{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:500}.race-event li{overflow-wrap:anywhere;padding:3px 0;font-size:13px}.community-feed li{justify-content:space-between;align-items:baseline;gap:14px;padding:6px 0;font-size:12px;display:flex}.community-feed li span{overflow-wrap:anywhere}.community-feed time{color:var(--muted);flex-shrink:0;font-size:10px}.dashboard-footer{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding:22px 0 0;display:flex}.dashboard-footer nav{gap:18px;display:flex}.dashboard-footer a{text-decoration:none}@media (max-width:600px){main:has(.dashboard){width:calc(100% - 32px)}.dashboard-top h1{font-size:30px}.headline-numbers{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;margin-bottom:28px}.headline-numbers dd{font-size:40px}.dashboard-section{padding:20px 0}}.community-feed .feed-source{color:var(--muted);margin-top:2px;font-size:10px;display:block}
