.race-page{--race-ink:#302552;--race-purple:#7653d7;--race-muted:#746985;background:#faf9fe;color:var(--race-ink);min-height:100dvh;font-family:Segoe UI,Arial,sans-serif;overflow-wrap:anywhere}.race-page *{box-sizing:border-box}.race-page a,.race-page button,.race-page input{-webkit-tap-highlight-color:transparent}.race-page button{cursor:pointer}.race-page :focus-visible{outline:3px solid #9274ec;outline-offset:5px}.race-footer,.race-header,.race-main{width:min(1120px,calc(100% - 56px));margin-inline:auto}.race-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.race-header-badge{display:flex;align-items:center;gap:8px;color:#927442;font-size:12px;background:#fff9e9;border:1px solid #f3e6c9;padding:11px 16px;border-radius:30px;font-weight:700}.race-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;min-height:340px;position:relative;padding:28px 0 45px}.race-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.7px;color:var(--race-purple);display:flex;align-items:center;gap:7px}.race-eyebrow>span{height:7px;width:7px;flex-shrink:0;border-radius:50%;background:#b093ef}.race-hero h1{font-size:clamp(38px,4.8vw,59px);line-height:1.16;letter-spacing:-2px;font-weight:900;margin:20px 0;position:relative}.race-hero h1>span:not(.race-heading-spark){color:var(--race-purple)}.race-heading-spark{display:inline-block;color:#efb846;font-size:35px;margin-left:13px;vertical-align:top;transform:rotate(12deg)}.race-hero-description{color:var(--race-muted);font-size:16px;line-height:1.7}.race-hero-tags{display:flex;flex-wrap:wrap;gap:18px;margin-top:23px;font-size:11px;font-weight:700;color:#756b86}.race-hero-tags>span{display:flex;align-items:center;gap:7px}.race-hero-tags svg{color:#c3a058;flex-shrink:0}.race-mascot{height:340px;position:relative;display:grid;place-items:center;isolation:isolate;background:radial-gradient(ellipse at center,#f1e9fc 0,transparent 68%)}.race-planet{height:170px;width:170px;border-radius:50%;position:relative;background:linear-gradient(145deg,#b49ae9 12%,#8864ce 70%);box-shadow:inset -13px -12px 0 #7855ba55,inset 10px 8px 0 #c9b3f155,0 22px 35px #7957b426;transform:rotate(-8deg)}.race-planet:before{content:"";position:absolute;inset:58px -50px;border-color:transparent #d5b7f5 #d5b7f5 #b698dc;border-style:solid;border-width:17px;transform:rotate(-25deg);border-radius:50%;z-index:-1}.race-planet-face{position:absolute;top:68px;left:48px;display:flex;gap:40px}.race-planet-face i{width:10px;height:15px;background:#3f2a64;border-radius:50%}.race-planet-face b{position:absolute;width:24px;height:15px;border-bottom:4px solid #3f2a64;border-radius:0 0 50% 50%;left:13px;top:18px}.race-planet-blush{position:absolute;width:21px;height:10px;background:#efafd5;border-radius:50%;top:91px;opacity:.8}.blush-left{left:31px}.blush-right{right:32px}.race-orbit{position:absolute;height:230px;width:365px;border:1px dashed #ded1f0;border-radius:50%;transform:rotate(-24deg);z-index:-2}.orbit-two{height:280px;width:280px;transform:rotate(45deg)}.race-float-star{position:absolute;color:#f3c055}.star-one{left:20%;top:20%;font-size:38px}.star-two{right:15%;bottom:17%;font-size:42px;color:#b39bdd}.star-three{right:15%;top:15%;font-size:20px;color:#a58cd9}.race-floating-coin{position:absolute;right:15%;top:28%;width:73px;height:73px;transform:rotate(14deg);filter:drop-shadow(0 8px 6px #c7992220)}.race-little-rocket{position:absolute;left:14%;bottom:13%;font-size:45px;transform:rotate(-10deg)}.race-orbit-label{position:absolute;bottom:15px;left:50%;transform:translateX(-50%) rotate(-5deg);white-space:nowrap;padding:11px 16px;background:white;border:1px solid #e9def5;box-shadow:0 4px 10px #34205208;border-radius:12px;font-size:12px;font-weight:700;display:flex;gap:7px;align-items:center;color:#8465b5}.race-group-section{padding-top:16px}.race-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:24px}.race-how h2,.race-section-heading h2{font-size:28px;line-height:1.25;font-weight:900;letter-spacing:-.6px}.race-section-heading h2>span{font-size:25px;display:inline-block;margin-left:4px}.race-section-heading p:not(.race-step){color:var(--race-muted);font-size:13px;margin-top:9px;line-height:1.6}.race-step{font-size:10px;letter-spacing:1.4px;color:#9b89b8;font-weight:800;margin-bottom:12px;display:flex;align-items:center;gap:7px}.race-step>span{background:#ede6fa;color:#8f72c8;width:21px;height:21px;display:inline-grid;place-items:center;border-radius:6px;letter-spacing:0}.race-search{min-width:0;width:290px;display:flex;align-items:center;gap:9px;background:white;border:1px solid #e8e3f1;border-radius:14px;padding:13px 15px;color:#a79db8}.race-search input{outline:none!important;background:transparent;min-width:0;width:100%;color:var(--race-ink);font-size:13px}.race-search:focus-within{box-shadow:0 0 0 3px #7653d71c;border-color:#b8a0eb}.race-search input::-moz-placeholder{color:#aaa0b6}.race-search input::placeholder{color:#aaa0b6}.race-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.race-group-card{display:flex;align-items:center;gap:15px;padding:22px 20px;text-align:left;border-radius:20px;background:white;border:1px solid #e9e3f2;box-shadow:0 5px 0 #eee9f5;min-width:0;transition:transform .2s,box-shadow .2s}.race-group-card:hover{transform:translateY(-4px);box-shadow:0 9px 0 #e6dff1}.race-group-icon{height:57px;width:57px;flex-shrink:0;display:grid;place-items:center;border-radius:17px;background:#f0e8fc;font-size:29px}.color-1 .race-group-icon{background:#fff0e4}.color-2 .race-group-icon{background:#e7f5ef}.color-3 .race-group-icon{background:#e8f1ff}.race-group-text{flex:1;min-width:0}.race-group-text b{font-size:21px;font-weight:900;display:block;line-height:1.25}.race-group-text small{display:block;margin-top:7px;color:var(--race-muted);font-size:11px}.race-group-arrow{display:grid;place-items:center;background:#f8f5fe;border:1px solid #eee8f8;border-radius:50%;height:31px;width:31px;flex-shrink:0;color:#9d86c1}.race-kind-note{margin:32px 0 12px;background:#f1ecfb;border:1px solid #e8e0f6;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:11px;padding:16px;color:#8b77aa;font-size:13px;line-height:1.6}.race-kind-note>span{font-size:21px}.race-kind-note b{color:#72569d}.race-how{margin-top:65px;border-top:1px solid #ede8f5;padding:43px 0 32px}.race-how>.race-eyebrow{font-size:9px;justify-content:center;letter-spacing:1.2px}.race-how h2{text-align:center;margin-top:12px;font-size:26px}.race-how-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:29px}.race-how-grid article{text-align:center;padding:14px 7px}.race-how-icon{display:inline-grid;place-items:center;height:52px;width:52px;border-radius:17px;margin-bottom:14px}.race-how-icon.violet{background:#eee7fb;color:#9b79d5}.race-how-icon.orange{background:#fff0df;color:#e3a65f}.race-how-icon.green{background:#e5f5ed;color:#7eb49a}.race-how-icon.blue{background:#e8f1ff;color:#90afd8}.race-how h3{font-size:14px;font-weight:800}.race-how-grid p{font-size:12px;line-height:1.7;color:var(--race-muted);margin-top:8px}.race-week-note{display:flex;gap:9px;align-items:center;justify-content:center;font-size:11px;line-height:1.6;color:#a197b2;margin:28px auto 0;text-align:center;max-width:700px}.race-week-note span{font-size:18px}.race-footer{border-top:1px solid #eae5f1;padding:27px 0 35px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#a89eb8}.race-footer p{font-size:11px;line-height:1.6}.race-footer p span{display:block}.race-footer>a:last-child{display:flex;align-items:center;font-size:10px;gap:3px}.race-back-row{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:13px 0 30px}.race-back,.race-share{display:flex;align-items:center;gap:7px;color:#8c78a8;font-size:12px;font-weight:700}.race-share{border:1px solid #e7dff2;background:white;border-radius:12px;padding:10px 13px}.race-group-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.race-group-hero h1{font-size:47px;font-weight:900;line-height:1.2;margin:11px 0;letter-spacing:-1px}.race-group-hero>div>p:last-child{font-size:14px;color:var(--race-muted)}.race-title-star{font-size:27px;color:#efbf58;margin-left:12px;vertical-align:top}.race-week-card{display:flex;align-items:center;gap:12px;padding:17px 20px;border:1px solid #ede5f7;background:#f4effc;border-radius:17px;color:#a28abf;flex-shrink:0}.race-week-card b{display:block;font-size:13px;color:#75608f}.race-week-card small{display:block;font-size:11px;margin-top:6px}.race-personal{display:flex;gap:20px;align-items:center;border:2px solid #bca5e9;background:linear-gradient(110deg,#eee5fc,#faf4ff);border-radius:23px;padding:25px 28px;margin:30px 0;position:relative}.race-personal-avatar{font-size:48px;background:#fff9;height:79px;width:79px;display:grid;place-items:center;border-radius:22px;flex-shrink:0}.race-personal-info{flex:1;min-width:0}.race-personal-info>p{font-size:9px;letter-spacing:1.2px;color:#9b80ba;font-weight:800}.race-personal-info h2{font-size:20px;line-height:1.3;font-weight:900;margin-top:8px}.race-personal-progress{display:flex;align-items:center;gap:12px;margin-top:13px;max-width:390px}.race-personal-progress progress{height:9px;accent-color:#9271d2;width:100%;border-radius:20px;overflow:hidden;display:block}.race-personal-progress progress::-webkit-progress-bar{background:#dfd3f0}.race-personal-progress progress::-webkit-progress-value{background:#9271d2;border-radius:20px}.race-personal-progress>span{font-size:11px;font-weight:700;white-space:nowrap;color:#a089be}.race-personal-coins{display:grid;grid-template-columns:auto auto;align-items:center;-moz-column-gap:7px;column-gap:7px;text-align:center}.race-personal-coins b{font-size:38px;font-weight:900;color:#8e69c5;line-height:1}.race-personal-coins>span{grid-column:1/-1;color:#a58dbe;font-size:11px;margin-top:4px}.race-podium-section{margin:38px 0 40px}.race-live{display:flex;align-items:center;gap:7px;font-size:11px;white-space:nowrap;color:#9a8aaf;background:#fff;padding:8px 12px;border:1px solid #e9e2f3;border-radius:30px}.race-live i{height:6px;width:6px;border-radius:50%;background:#9ac6b1}.race-podium{display:flex;justify-content:center;align-items:flex-end;gap:20px;padding-top:28px;max-width:770px;margin:auto}.race-podium-card{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;background:#f0ebfa;border:1px solid #e3d9f0;border-radius:25px 25px 17px 17px;padding:22px 12px 16px;box-shadow:0 6px 0 #e3d9f0;transition:transform .2s}.race-podium-card:hover{transform:translateY(-4px)}.podium-0{order:2;min-height:245px;background:#fff5d8;border-color:#f0dfab;box-shadow:0 7px 0 #edd59a}.podium-1{order:1;min-height:213px;background:#eef1fa;border-color:#dce2ef;box-shadow:0 6px 0 #d8deed}.podium-2{order:3;min-height:195px;background:#fcf0e5;border-color:#efdfcc;box-shadow:0 6px 0 #ebd6bf}.race-crown{position:absolute;top:-28px;font-size:36px;transform:rotate(-12deg)}.race-podium-avatar{font-size:52px;line-height:1.2}.race-podium-name{display:block;font-size:17px;font-weight:900;margin:12px 0 9px;line-height:1.3}.race-podium-score{display:flex;align-items:center;gap:6px}.race-podium-score b{font-size:26px;font-weight:900;letter-spacing:-.5px}.race-podium-place{font-size:11px;color:#ac91b8;background:#ffffffa3;border-radius:20px;padding:6px 16px;margin-top:13px}.is-champion .race-podium-place{color:#ae8739}.race-podium-card.is-mine{outline:3px solid #a17edd;outline-offset:5px}.race-leaderboard{background:white;border:1px solid #eae3f3;border-radius:25px;padding:26px 28px;box-shadow:0 5px 0 #f0eaf7}.race-leaderboard .race-section-heading{margin-bottom:20px}.race-leaderboard h2{font-size:22px}.race-leaderboard .race-search{background:#fbfafe;width:240px;padding:11px 13px}.race-list-head{display:grid;grid-template-columns:58px 1fr 90px;gap:12px;color:#b2a7bf;font-size:10px;padding:0 13px 12px;border-bottom:1px solid #f1ecf7}.race-list-head>span:last-child{text-align:right}.race-roster{list-style:none;padding:0;margin:0}.race-roster li+li{border-top:1px solid #f4f0f8}.race-student{width:100%;display:flex;align-items:center;gap:13px;padding:15px 12px;text-align:left;border-radius:14px;transition:background .2s}.race-student:hover{background:#faf7ff}.race-student.is-mine{background:#f1eafa;box-shadow:inset 0 0 0 2px #d1bde9}.race-rank{height:34px;width:34px;display:grid;place-items:center;color:#b5a7c2;font-size:14px;font-weight:800;flex-shrink:0;margin-right:12px}.rank-1{background:#fff2c3;color:#bc9544}.rank-1,.rank-2{border-radius:11px}.rank-2{background:#ecf0f8;color:#97a5be}.rank-3{background:#fcf0e4;color:#c29a76;border-radius:11px}.race-student-avatar{display:grid;place-items:center;width:45px;height:45px;background:#f7f3fd;border-radius:15px;font-size:27px;flex-shrink:0}.race-student-name{flex:1;min-width:0}.race-student-name b{font-size:15px;display:block;line-height:1.3}.race-student-name small{display:block;font-size:10px;color:#b4a5c4;margin-top:5px}.race-student.is-mine .race-student-name small{color:#956cc2}.race-student-score{display:flex;align-items:center;gap:7px;flex-shrink:0}.race-student-score b{font-size:23px;font-weight:900;color:#a88a45}.race-ranking-note{display:flex;gap:7px;align-items:center;justify-content:center;color:#b2a7bf;font-size:10px;line-height:1.6;margin:18px 0 0;text-align:center}.race-last-stars{display:flex;gap:18px;align-items:center;margin-top:25px;padding:23px;border:1px solid #f0e3c5;background:#fff9eb;border-radius:20px}.race-last-trophy{font-size:41px}.race-last-stars h2{font-size:15px;font-weight:900;color:#9c8147}.race-last-stars p{font-size:14px;font-weight:700;margin:7px 0;color:#a48a59}.race-last-stars small{font-size:11px;color:#b5a17d}.race-state{text-align:center;padding:48px 20px;min-height:220px;background:#fff;border:1px dashed #e5dcef;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px}.race-state h2,.race-state h3{font-size:20px;font-weight:800}.race-state p{font-size:14px;color:var(--race-muted);line-height:1.5}.race-state-emoji{font-size:40px}.race-loading-star{font-size:42px;color:#b395e4;animation:race-glow 1.5s ease-in-out infinite}.race-button{gap:7px;background:#8c6ace;color:white;border-radius:12px;padding:12px 22px;font-size:14px;font-weight:700}.race-button,.race-pagination{display:flex;align-items:center}.race-pagination{justify-content:center;gap:20px;margin-top:25px;font-size:13px}.race-pagination button{background:white;border:1px solid #e5dbf1;border-radius:10px;padding:9px 14px;color:#8c72aa}.race-pagination button:disabled{opacity:.4;cursor:default}.race-start-message{text-align:center;padding:30px;background:#f4effc;border-radius:20px;border:1px dashed #e2d4f0}.race-start-message>span{font-size:40px}.race-start-message h3{font-size:20px;font-weight:800;margin:12px 0 8px}.race-start-message p{color:var(--race-muted);font-size:13px}.race-no-result{padding:35px 10px;color:var(--race-muted);font-size:14px;text-align:center}@keyframes race-glow{50%{transform:scale(.85) rotate(35deg);opacity:.5}}@media(max-width:800px){.race-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.race-footer,.race-header,.race-main{width:calc(100% - 36px)}.race-hero{grid-template-columns:1fr .8fr;min-height:340px}.race-hero h1{font-size:43px}.race-mascot{transform:scale(.85);transform-origin:center;min-width:260px}.race-orbit{width:300px}.race-hero-tags{gap:10px}.race-section-heading{align-items:flex-start}.race-how-grid{gap:10px}.race-group-card{padding:19px 15px}.race-group-hero h1{font-size:39px}.race-week-card{padding:14px}.race-leaderboard .race-section-heading{flex-wrap:wrap}.race-leaderboard .race-search{width:100%}}@media(max-width:560px){.race-footer,.race-header,.race-main{width:calc(100% - 32px)}.race-header{padding:21px 0}.race-header-badge{font-size:9px;padding:8px 10px;gap:5px}.race-header-badge svg{width:13px;height:13px}.race-header>a:first-child img{max-width:108px}.race-hero{grid-template-columns:1fr;padding:20px 0 28px;min-height:0;text-align:center}.race-hero-copy{z-index:1}.race-eyebrow{justify-content:center;font-size:9px;letter-spacing:1.2px}.race-hero h1{font-size:39px;letter-spacing:-1.7px;margin:17px 0}.race-heading-spark{font-size:24px;margin-left:6px}.race-hero-description{font-size:14px}.race-hero-tags{justify-content:center;font-size:9px;gap:14px;margin-top:18px}.race-hero-tags svg{width:20px;height:20px}.race-mascot{transform:scale(.78);height:200px;margin-top:-8px;margin-bottom:-25px;transform-origin:center;min-width:0}.race-planet{width:154px;height:154px}.race-planet-face{top:59px;left:41px}.race-planet-blush{top:83px}.race-floating-coin{top:20%;right:9%}.race-little-rocket{left:8%;bottom:9%}.race-orbit-label{bottom:-7px}.race-section-heading{display:block;margin-bottom:18px}.race-section-heading h2{font-size:25px;letter-spacing:-.7px}.race-section-heading h2>span{font-size:21px}.race-section-heading p:not(.race-step){font-size:12px}.race-step{font-size:9px;margin-bottom:10px}.race-search{width:100%;margin-top:16px;padding:13px 14px}.race-search input{font-size:16px}.race-group-grid{grid-template-columns:1fr;gap:13px}.race-group-card{padding:18px;gap:15px;border-radius:18px}.race-group-icon{height:54px;width:54px}.race-group-text b{font-size:22px}.race-group-text small{font-size:12px}.race-kind-note{font-size:12px;text-align:left;padding:14px;margin-top:25px;gap:10px}.race-kind-note>span{flex-shrink:0}.race-how{padding-top:30px;margin-top:40px}.race-how>.race-eyebrow{font-size:8px;letter-spacing:.7px}.race-how h2{font-size:23px;line-height:1.4}.race-how-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 9px;margin-top:16px}.race-how h3{font-size:13px}.race-how-grid p{font-size:11px}.race-how-grid article{padding:12px 4px}.race-week-note{font-size:10px;text-align:left;align-items:flex-start;padding:0 4px}.race-footer{flex-wrap:wrap;padding:22px 0;gap:15px}.race-footer p{font-size:10px;flex:1;text-align:right}.race-footer>a:last-child{width:100%;justify-content:center;border-top:1px solid #eee8f5;padding-top:14px}.race-back-row{gap:10px;margin:9px 0 28px}.race-back{font-size:11px;gap:5px}.race-share{font-size:10px;padding:9px;gap:5px}.race-share svg{width:14px}.race-group-hero{display:block;margin-bottom:20px}.race-group-hero .race-eyebrow{justify-content:flex-start}.race-group-hero h1{font-size:35px}.race-group-hero>div>p:last-child{font-size:13px}.race-week-card{display:inline-flex;margin-top:19px;gap:10px;padding:12px 15px;border-radius:13px}.race-week-card b{font-size:12px}.race-week-card small{font-size:10px}.race-week-card svg{width:20px}.race-personal{gap:12px;padding:17px 15px;border-radius:19px;flex-wrap:wrap}.race-personal-avatar{width:53px;height:53px;font-size:34px;border-radius:16px}.race-personal-info{flex-basis:calc(100% - 70px)}.race-personal-info>p{font-size:8px}.race-personal-info h2{font-size:15px}.race-personal-progress{margin-top:10px;gap:7px}.race-personal-progress>span{font-size:10px}.race-personal-coins{margin-left:65px;display:flex;gap:6px}.race-personal-coins b{font-size:25px}.race-personal-coins>span{margin-top:0;font-size:11px}.race-podium-section{margin:29px 0 31px}.race-podium-section .race-section-heading{position:relative}.race-podium-section .race-section-heading h2{font-size:23px}.race-live{display:inline-flex;margin-top:11px;font-size:10px;padding:6px 10px}.race-podium{gap:9px;padding-top:23px}.race-podium-card{padding:17px 5px 13px;border-radius:20px 20px 13px 13px}.podium-0{min-height:202px}.podium-1{min-height:180px}.podium-2{min-height:164px}.race-podium-avatar{font-size:35px}.race-podium-name{font-size:12px;line-height:1.35;margin:10px 0 7px}.race-podium-score{gap:3px}.race-podium-score b{font-size:22px}.race-podium-score .race-coin{width:19px;height:19px}.race-podium-place{font-size:9px;padding:5px 10px;margin-top:9px}.race-crown{font-size:29px;top:-24px}.race-leaderboard{padding:20px 12px;border-radius:21px}.race-leaderboard h2{font-size:22px}.race-leaderboard .race-section-heading{padding:0 4px}.race-list-head{grid-template-columns:39px 1fr 64px;gap:7px;padding:0 6px 10px;font-size:9px}.race-student{padding:13px 5px;gap:8px}.race-rank{height:28px;width:28px;margin-right:1px;font-size:12px;flex-shrink:0;border-radius:9px}.race-student-avatar{width:34px;height:36px;font-size:23px;border-radius:11px}.race-student-name b{font-size:15px}.race-student-name small{font-size:10px}.race-student-score{gap:3px}.race-student-score b{font-size:21px}.race-student-score .race-coin{height:21px;width:21px}.race-ranking-note{font-size:9px;gap:5px;align-items:flex-start;margin-top:15px}.race-ranking-note svg{flex-shrink:0}.race-last-stars{padding:18px 14px;gap:12px}.race-last-trophy{font-size:30px}.race-last-stars h2,.race-last-stars p{font-size:13px}.race-last-stars small{font-size:10px}.race-state{padding:32px 17px}.race-state h2,.race-state h3{font-size:18px}}.race-rules{margin:0 0 24px;border:1px solid #e6ddf2;border-radius:16px;background:#fff;overflow:hidden}.race-rules summary{display:flex;align-items:center;gap:12px;min-height:56px;padding:14px 18px;cursor:pointer;list-style:none;color:#72529c;font-size:14px;font-weight:700}.race-rules summary::-webkit-details-marker{display:none}.race-rules-label{display:flex;align-items:center;gap:9px;flex:1}.race-rules-label svg{flex-shrink:0}.race-rules-limit{font-size:12px;font-weight:600;color:#8b769f}.race-rules-chevron{flex-shrink:0;transition:transform .2s}.race-rules[open] .race-rules-chevron{transform:rotate(180deg)}.race-rules-content{padding:0 18px 18px;border-top:1px solid #f1eaf8}.race-rules-content>p{font-size:13px;line-height:1.7;color:var(--race-muted);margin:15px 0}.race-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;padding:0;margin:0}.race-rules-grid li{background:#fbf9fe;border-radius:13px;padding:15px}.race-rules-grid li>div{display:flex;align-items:center;gap:9px}.race-stage-number{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;flex-shrink:0;font-size:12px;font-weight:800;background:#eee6fa;color:#7653ad}.race-rules-grid h3{font-size:13px;font-weight:800;flex:1}.race-rules-grid b{display:flex;align-items:center;gap:3px;font-size:16px}.race-rules-grid b svg{width:19px;height:19px}.race-rules-grid p{font-size:13px;line-height:1.75;color:#746985;margin:10px 0 0}.race-rules-content>.race-rules-note{margin-bottom:0;font-size:12px}.race-breakdown{margin:16px 0 30px;background:#fff;border:1px solid #e8def4;border-radius:22px;padding:24px}.race-breakdown-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.race-breakdown-heading .race-step{margin-bottom:7px}.race-breakdown-heading h2{font-size:21px;font-weight:800;line-height:1.4}.race-breakdown-heading>span{display:flex;align-items:center;gap:6px;color:#927334;font-size:13px;white-space:nowrap}.race-breakdown-heading>span b{font-size:20px}.race-breakdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.race-stage-card{--stage-color:#9974ce;background:#f8f4fd;border:1px solid #eee6f8;border-radius:16px;padding:17px;min-width:0}.race-stage-card.stage-orange{--stage-color:#d49740;background:#fffbf1;border-color:#f6ebd4}.race-stage-card.stage-green{--stage-color:#569777;background:#f2faf5;border-color:#deeee4}.race-stage-card.stage-blue{--stage-color:#5989b9;background:#f3f8fe;border-color:#e1ebf7}.race-stage-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.race-stage-top .race-how-icon{width:39px;height:39px;margin:0;border-radius:12px}.race-stage-top>span:last-child{font-size:10px;color:#86738f;font-weight:700}.race-stage-card h3{font-size:14px;font-weight:800;margin:14px 0 9px;line-height:1.4}.race-stage-score{display:flex;align-items:center;gap:6px}.race-stage-score>b{font-size:30px;font-weight:900;line-height:1.2}.race-stage-score>span{font-size:14px;color:#8b7b99}.race-stage-score svg{margin-left:auto}.race-stage-card progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;height:7px;border:0;border-radius:8px;overflow:hidden;background:#0000000c;margin-top:14px;color:var(--stage-color);accent-color:var(--stage-color)}.race-stage-card progress::-webkit-progress-bar{background:#0000000c;border-radius:8px}.race-stage-card progress::-webkit-progress-value{background:var(--stage-color);border-radius:8px}.race-stage-card progress::-moz-progress-bar{background:var(--stage-color);border-radius:8px}.race-stage-card>p{font-size:11px;color:#746985;line-height:1.6;margin:10px 0 0;min-height:35px}@media(max-width:800px){.race-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.race-breakdown-heading{align-items:flex-start}}@media(max-width:560px){.race-rules{margin-bottom:18px;border-radius:14px}.race-rules summary{padding:12px;font-size:12px;gap:7px}.race-rules-label{gap:6px}.race-rules-limit{font-size:10px;max-width:70px;line-height:1.5;text-align:right}.race-rules-content{padding:0 12px 14px}.race-rules-grid{grid-template-columns:1fr;gap:10px}.race-rules-grid li{padding:13px}.race-rules-grid p{font-size:13px}.race-breakdown{padding:17px 13px;border-radius:19px;margin-top:12px}.race-breakdown-heading{display:block;margin-bottom:15px}.race-breakdown-heading h2{font-size:18px}.race-breakdown-heading>span{margin-top:10px;font-size:12px}.race-breakdown-heading .race-step{font-size:9px}.race-breakdown-grid{gap:9px}.race-stage-card{padding:12px 10px;border-radius:13px}.race-stage-card h3{font-size:12px;min-height:34px;margin:11px 0 6px}.race-stage-top .race-how-icon{width:32px;height:32px}.race-stage-top svg{width:18px;height:18px}.race-stage-top>span:last-child{font-size:9px}.race-stage-score>b{font-size:27px}.race-stage-score>span{font-size:12px}.race-stage-score svg{width:20px;height:20px}.race-stage-card>p{font-size:10px;min-height:32px}}@media(prefers-reduced-motion:reduce){.race-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}