.race-page{max-width:1000px;margin:auto;padding:32px 20px 56px}.race-page h1{letter-spacing:-.06em;margin:0 0 28px;font-size:clamp(28px,5vw,44px);font-weight:850}.office-race{color:#f3f5ed;background:#101210;border-radius:22px;padding:24px;overflow:hidden}.race-toolbar,.race-track-heading,.race-lane-name,.race-actions,.race-editor summary{justify-content:space-between;align-items:center;gap:12px;display:flex}.race-toolbar{font-variant-numeric:tabular-nums;font-weight:750}.race-toolbar i{background:#b8ed80;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.race-toolbar small{color:#aab0a4;font-weight:400}.race-live{margin:24px 0;font-size:clamp(20px,4vw,30px);font-weight:750}.race-track{background:#1b201b;border:1px solid #343c32;border-radius:12px;overflow:hidden}.race-track-heading{color:#c1c9b9;border-bottom:1px solid #343c32;padding:12px 16px;font-size:12px}.race-sponsor-pill{color:#b8ed80;background:#b8ed801a;border:1px solid #b8ed8033;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:600}.race-dialog-sponsor{text-align:left;background:#20271f;border:1px dashed #404f3d;border-radius:8px;margin:16px 0 12px;padding:10px 14px}.race-sponsor-tag{color:#a4dc6f;letter-spacing:.4px;background:#2a3828;border-radius:3px;margin-bottom:4px;padding:2px 5px;font-size:9px;font-weight:700;display:inline-block}.race-dialog-sponsor p{color:#e2e8dc;margin:0;font-size:12px;line-height:1.4}.race-lanes{max-height:490px;margin:0;padding:0;list-style:none;overflow:auto}.race-lane{border-bottom:1px dashed #454e40;padding:12px 16px 6px;position:relative}.race-lane:last-child{border:0}.race-lane-name{white-space:nowrap;text-overflow:ellipsis;justify-content:flex-start;max-width:100%;font-size:14px;font-weight:650;display:block;overflow:hidden}.race-runway{background:repeating-linear-gradient(90deg,#0000 0 48px,#333e2f 49px 50px);border-bottom:2px solid #66755b;height:65px;margin:0 45px 0 10px;position:relative}.race-runner{z-index:1;will-change:left;width:50px;height:54px;position:absolute;bottom:0;transform:translate(-12px)}.race-runner svg{width:100%;height:100%}.race-runner.is-running svg{animation:none}.race-door{color:#d6efc2;background:#34442c;border:1px solid #7f9f65;border-bottom:0;place-items:center;width:35px;height:42px;font-size:9px;display:grid;position:absolute;top:16px;right:-40px}.race-event{color:#ffb58d;text-align:right;height:22px;padding-top:3px;font-size:11px}.race-event.boost,.race-event strong{color:#b8ed80}.race-actions{flex-wrap:wrap;margin:20px 0}.office-race button{color:#f3f5ed;background:#282e25;border:1px solid #4c5548;border-radius:10px;min-height:46px;padding:12px 16px}.office-race .race-start{color:#14200d;background:#c1ef8a;border:0;flex:1;justify-content:space-between;align-items:center;gap:16px;font-weight:800;display:flex}.race-editor{border-top:1px solid #343c32;padding-top:16px}.race-editor summary{cursor:pointer;min-height:44px;font-weight:650}.race-editor summary span{color:#b3bdae;font-weight:400}.race-editor fieldset{border:0;margin:0;padding:12px 0 0}.race-editor label{color:#bdc4b8;margin-bottom:10px;font-size:12px;display:block}.race-editor textarea{color:#f3f5ed;background:#171b16;border:1px solid #60695b;border-radius:8px;width:100%;min-height:100px;margin-bottom:10px;padding:12px;display:block}.race-editor textarea::placeholder{color:#969f8f}.race-error{color:#ffc0a1}.race-result{color:#20291c;background:#f7f9f2;border:1px solid #c9d4be;border-radius:18px;width:calc(100% - 32px);max-width:410px;max-height:calc(100svh - 32px);margin:auto;padding:32px 24px;overflow:auto}.race-result::backdrop{background:#000b}.race-result-kicker{letter-spacing:.1em;color:#627354;margin:0 0 20px;font-size:11px}.race-result h2{margin:0 0 8px;font-size:22px}.race-result>strong{overflow-wrap:anywhere;font-size:36px;font-weight:850;display:block}.race-result>p:not(.race-result-kicker){color:#627354;font-size:13px}.race-result ol{max-height:180px;margin:22px 0;padding:0;list-style:none;overflow:auto}.race-result li{overflow-wrap:anywhere;border-top:1px solid #dbe2d4;justify-content:space-between;gap:12px;padding:10px 0;font-size:13px;display:flex}.race-result>button:not(.race-close){width:100%;margin-top:8px}.race-result .race-close{color:#20291c;background:0 0;border:0;width:44px;padding:0;font-size:28px;position:absolute;top:8px;right:10px}.race-card{background:#e6ecdf}.race-card .race-card-visual{letter-spacing:-10px;font-size:72px;transform:rotate(-8deg)}@keyframes office-run{0%{transform:rotate(-5deg)translateY(0)}to{transform:rotate(5deg)translateY(-4px)}}@media (width<=600px){.race-page{padding:24px 12px 36px}.office-race{border-radius:16px;padding:16px 12px}.race-lane{padding-left:12px;padding-right:12px}.race-actions{gap:8px}.race-actions .race-start{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.race-runner.is-running svg{animation:none}}@media (width<=600px){.race-lanes{max-height:360px}.race-lane{padding-top:8px;padding-bottom:2px}.race-runway{height:44px}.race-runner{width:40px;height:42px}.race-door{height:37px;top:5px}.race-event{height:18px}}.race-broadcast{overflow-wrap:anywhere;min-height:2.8em;margin:18px 0 0;font-size:clamp(19px,3.3vw,27px);line-height:1.4}.race-follow{color:#c1c9b9;align-items:center;gap:12px;margin-bottom:18px;font-size:12px;display:flex}.race-follow label{flex-shrink:0}.race-follow select{color:#f3f5ed;width:100%;min-width:0;max-width:320px;min-height:44px;font:inherit;text-overflow:ellipsis;background:#1b201b;border:1px solid #60695b;border-radius:8px;padding:8px 12px}.race-stages{color:#a8b39f;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 14px;padding:0;font-size:11px;list-style:none;display:grid}.race-stages li{border-bottom:2px solid #343c32;padding:8px 4px}.race-stages li span{margin-bottom:4px;font-size:10px;display:block}.race-stages li[aria-current]{color:#c1ef8a;border-color:#c1ef8a}.race-track{position:relative}.race-track-heading{min-height:42px}.race-track-heading span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.race-lanes{max-height:510px;scroll-padding-block:8px;position:relative}.race-lane[data-followed=true]{background:#293622;box-shadow:inset 3px 0 #c1ef8a}.race-lane-name small{color:#acb8a2;margin-left:10px;font-size:10px;font-weight:400}.race-cheering{color:#c1ef8a;margin-left:10px;font-size:10px}.race-runway{height:74px;margin-left:24px}.race-runner{width:64px;height:68px;transform:translate(-22px)}.race-mug{overflow:visible}.mug-body,.mug-legs{transform-box:fill-box;transform-origin:50%}.race-runner.is-running .mug-body{animation:.22s ease-in-out infinite alternate mug-run}.race-runner.is-running .mug-legs{animation:.15s ease-in-out infinite alternate mug-steps}.race-runner.is-held .mug-body{animation:none;transform:rotate(-12deg)}.race-runner.is-held .mug-legs{animation-duration:.7s}.race-runner.is-boosting .mug-body{animation-duration:.1s}.race-runner.is-boosting .mug-steam{animation:.24s ease-out infinite alternate mug-steam}.race-runner.is-paused *{animation-play-state:paused!important}.race-runner.has-finished .mug-body{transform:rotate(8deg)}.race-obstacle{color:#433027;background:#ffcaad;border-radius:5px;place-items:center;width:22px;height:26px;font-size:20px;font-weight:800;display:grid;position:absolute;top:5px;right:-12px;transform:rotate(9deg)}.race-obstacle.is-elevator{color:#f3f5ed;background:#56634e;border:2px solid #bec6b8;width:24px;height:34px;transform:none}.race-boost-trail{color:#c1ef8a;font-size:30px;position:absolute;top:25px;left:-20px}.race-event{height:24px;font-size:12px}.race-door{text-align:center;border-top:4px solid #c1ef8a;font-size:11px;line-height:1.1;top:25px}.race-countdown{color:#c1ef8a;pointer-events:none;background:#101210e8;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.race-countdown strong{font-variant-numeric:tabular-nums;font-size:88px;line-height:1.2}.race-countdown span{font-size:12px}.race-final-stretch .race-track{border-color:#a5c780}.race-editor{margin-top:20px}.race-podium{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.race-podium .race-mug{width:110px;height:116px}.race-podium>span{color:#82654c;border:2px solid #82654c;padding:8px;font-size:22px;font-weight:800;line-height:1.2;transform:rotate(-9deg)}.race-result .race-finish-record{padding:12px 0 0;font-weight:650}.race-incident-record{color:#627354;margin-top:5px;font-size:10px;display:block}.race-result li>div{flex:1;min-width:0}.race-result li>span{flex-shrink:0}@keyframes mug-run{0%{transform:translateY(1px)rotate(-5deg)}to{transform:translateY(-3px)rotate(5deg)}}@keyframes mug-steps{0%{transform:skew(-14deg)}to{transform:skew(14deg)}}@keyframes mug-steam{0%{opacity:.5;transform:translateY(0)}to{opacity:1;transform:translateY(-4px)}}@media (width<=600px){.race-lanes{max-height:440px}.race-runway{height:62px}.race-runner{width:57px;height:60px}.race-door{top:19px}.race-event{height:23px;font-size:11px}.race-stages{gap:5px;font-size:10px}.race-follow{gap:8px}}@media (prefers-reduced-motion:reduce){.office-race .race-runner *{animation:none!important}}.race-share{border-top:1px dashed #bac6b0;margin-top:16px;padding-top:16px}.race-share label{text-align:left;align-items:center;gap:8px;min-height:44px;font-size:12px;display:flex}.race-share input{accent-color:#617f42;width:18px;height:18px}.race-share button,.race-share textarea{width:100%}.race-share p{overflow-wrap:anywhere;font-size:12px}.race-share textarea{min-height:70px;padding:8px;font:12px system-ui}
