:root{--navy:#14213b;--blue:#3569dd;--cyan:#28b8c7;--green:#20ad70;--orange:#f07a32;--line:#dde3ed;--muted:#6b7688}*{box-sizing:border-box}body{margin:0}.race-page{min-height:100vh;color:var(--navy);background:radial-gradient(circle at 30% 0,#e8efff,#0000 35%),#f5f7fb;font-family:Arial,sans-serif}.race-page>header{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:1fr auto 1fr;align-items:center;height:86px;padding:0 32px;display:grid}.race-page>header>a{color:#59677d;font-weight:800;text-decoration:none}.race-page>header>div{text-align:center}.race-page p,.race-page h1,.race-page h2{margin:0}.race-page>header p,.scoreboard>div>p,.finish-overlay p{color:var(--blue);letter-spacing:1.4px;font-size:9px;font-weight:950}.race-page>header h1{font-size:27px}.race-page>header>button{height:40px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #d2d8e2;border-radius:10px;justify-self:end;padding:0 15px;font-weight:800}.race-page>header>button:disabled{opacity:.35}.race-layout{grid-template-columns:minmax(0,1fr) 365px;gap:20px;width:min(1420px,100% - 34px);margin:26px auto;display:grid}.race-board,.scoreboard{border:1px solid var(--line);background:#fff;border-radius:22px;position:relative;box-shadow:0 16px 45px #1c305214}.race-board{min-height:650px;padding:28px;overflow:hidden}.race-stats{text-align:center;justify-content:center;gap:60px;display:flex}.race-stats>div{gap:4px;display:grid}.race-stats small{color:var(--muted);letter-spacing:1px;font-size:10px;font-weight:900}.race-stats strong{font-variant-numeric:tabular-nums;letter-spacing:-1px;font-size:38px}.race-stats>div:first-child strong{color:var(--blue)}.progress{justify-content:center;align-items:center;margin:24px auto 38px;display:flex}.progress i{color:#9ba5b5;background:#fff;border:2px solid #d8dee8;border-radius:50%;place-items:center;width:42px;height:42px;font-style:normal;font-weight:900;display:grid;position:relative}.progress i+i{margin-left:38px}.progress i+i:before{content:"";background:#dfe4ec;width:42px;height:3px;position:absolute;right:40px}.progress i.done{border-color:var(--green);background:var(--green);color:#fff}.progress i.current{border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 6px #e7eeff}.start-card{text-align:center;width:min(680px,100%);margin:auto}.start-card>p{color:var(--muted);margin-bottom:12px;font-size:12px;font-weight:850}.difficulty-switch{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.difficulty-switch button{min-height:92px;color:var(--navy);cursor:pointer;background:#fff;border:2px solid #dfe4ed;border-radius:15px;place-content:center;gap:7px;display:grid}.difficulty-switch button strong{font-size:17px}.difficulty-switch button small{color:var(--muted);padding:0 8px;line-height:1.35}.difficulty-switch button.active{border-color:var(--blue);color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);background:#eef3ff}.difficulty-switch button:last-child.active{color:#7831b6;background:#f7efff;border-color:#9b4de0;box-shadow:inset 0 0 0 1px #9b4de0}.start-race{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3569dd,#244ba8);border:0;border-radius:14px;width:min(390px,100%);height:58px;margin:25px auto 10px;font-size:17px;font-weight:950;box-shadow:0 9px 20px #b8c7eb}.start-card>span{color:var(--muted);font-size:12px;display:block}.race-bank{background:#edf2ff;border-radius:18px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;min-height:115px;margin:0 auto 28px;padding:20px;display:flex}.race-bank button{min-width:86px;height:65px;color:var(--blue);cursor:grab;background:#fff;border:2px solid #adc0ec;border-radius:14px;padding:0 13px;font-size:23px;font-weight:950;transition:all .18s;box-shadow:0 6px #c5d2ed}.race-bank button:hover:not(:disabled){transform:translateY(-3px)}.race-bank button:disabled{opacity:.14;box-shadow:none}.race-slots{background:#fafbfd;border:2px dashed #cad2df;border-radius:18px;grid-template-columns:repeat(5,1fr);gap:12px;padding:20px;display:grid}.race-slots button{color:#9aa5b4;cursor:pointer;background:#fff;border:2px dashed #cbd3df;border-radius:14px;align-content:center;place-items:center;gap:8px;height:125px;display:grid}.race-slots small{background:#edf0f5;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.race-slots strong{color:var(--navy);font-size:clamp(20px,2.3vw,31px)}.race-slots span{font-size:10px}.race-slots.correct{border-color:var(--green);background:#eaf9f2}.race-slots.correct button{border-style:solid;border-color:#73c99e}.race-hint{color:#8b5a0b;text-align:center;background:#fff3df;border-radius:10px;margin-top:14px;padding:12px;font-weight:750}.finish-overlay{z-index:5;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#eff4fce0;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.finish-overlay>section{text-align:center;background:#fff;border:1px solid #cfd8e7;border-radius:22px;width:min(480px,100%);padding:34px;animation:.45s finish;box-shadow:0 25px 70px #192d5033}.finish-icon{width:62px;height:62px;color:var(--green);background:#e9f9f1;border-radius:50%;place-items:center;margin:0 auto 12px;font-size:30px;display:grid}.finish-overlay h2{color:var(--blue);font-variant-numeric:tabular-nums;margin:7px 0;font-size:44px}.finish-overlay>section>span{color:var(--muted)}.finish-overlay form{gap:10px;margin-top:22px;display:grid}.finish-overlay label{color:var(--muted);text-align:left;gap:6px;font-size:11px;font-weight:800;display:grid}.finish-overlay input{border:1px solid #cfd7e4;border-radius:11px;height:50px;padding:0 13px;font-size:18px}.finish-overlay form button,.again{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:11px;height:48px;font-weight:900}.rank{color:#52617a;background:#edf2ff;border-radius:12px;margin:22px 0;padding:14px}.rank strong{color:var(--blue);font-size:24px}.again{width:100%}.scoreboard{align-self:start;padding:24px}.scoreboard h2{margin-top:5px;font-size:23px}.score-filter{grid-template-columns:repeat(4,1fr);gap:5px;margin:18px 0;display:grid}.score-filter button{color:#667286;cursor:pointer;background:#fff;border:1px solid #d6dce6;border-radius:8px;height:34px;font-size:10px;font-weight:850}.score-filter button.active{border-color:var(--blue);background:var(--blue);color:#fff}.scoreboard ol{gap:7px;margin:0;padding:0;list-style:none;display:grid}.scoreboard li{background:#f7f8fb;border-radius:10px;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:9px;display:grid}.scoreboard li>b{color:#667286;background:#e4e8ef;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.scoreboard li:first-child>b{color:#7c5b00;background:#ffdf72}.scoreboard li:nth-child(2)>b{background:#d8dce5}.scoreboard li:nth-child(3)>b{color:#764410;background:#e8b98b}.scoreboard li>span{min-width:0;display:grid}.scoreboard li strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.scoreboard li small{color:var(--muted);font-size:9px}.scoreboard time{color:var(--blue);font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.empty-score{color:var(--muted);text-align:center;padding:25px 10px;font-size:12px}@keyframes finish{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}@media (max-width:950px){.race-layout{grid-template-columns:1fr}.scoreboard{order:2}.scoreboard ol{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.race-page>header{grid-template-columns:1fr 1fr;height:auto;padding:14px}.race-page>header>div{order:3;grid-column:1/-1;margin-top:9px}.race-board{min-height:600px;padding:16px}.race-stats{gap:30px}.race-stats strong{font-size:30px}.progress i{width:34px;height:34px}.progress i+i{margin-left:22px}.progress i+i:before{width:26px;right:32px}.difficulty-switch{grid-template-columns:1fr}.difficulty-switch button{min-height:65px}.race-bank button{min-width:60px;height:55px;font-size:18px}.race-slots{gap:5px;padding:8px}.race-slots button{height:90px}.race-slots span{font-size:0}.race-slots span:after{content:"+";font-size:18px}.scoreboard ol{grid-template-columns:1fr}}.game-switch{grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 24px;display:grid}.game-switch button,.mode-grid button{text-align:left;color:#17365d;background:#fff;border:2px solid #d9e2ec;border-radius:14px;padding:15px}.game-switch button{flex-direction:column;gap:4px;display:flex}.game-switch button.active,.mode-grid button.active{background:#f3edff;border-color:#6d43c0;box-shadow:0 0 0 3px #e7dafd}.game-switch strong{font-size:1.05rem}.game-switch small,.mode-grid small{color:#63758a;margin-top:4px;display:block}.mode-heading{margin-top:0!important}.mode-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:24px;display:grid}.mode-grid button{min-height:82px}.mode-grid strong{display:block}.score-select{color:#5e7086;flex-direction:column;gap:6px;margin:18px 0;font-size:.76rem;font-weight:800;display:flex}.score-select select{color:#17365d;width:100%;font:inherit;background:#fff;border:1px solid #d7e0e9;border-radius:10px;padding:11px}.triad-game{flex-direction:column;justify-content:center;align-items:center;min-height:520px;padding:25px;display:flex}.triad-instruction{color:#52677d;font-size:1.05rem;font-weight:800}.triad-diagram{width:min(470px,92%);padding-top:10px;position:relative}.triad-sum,.triad-legs>div{background:#fff;border:3px solid #17365d;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:0 8px 20px #17365d1c}.triad-sum{z-index:2;width:150px;height:118px;margin:auto;position:relative}.triad-sum strong,.triad-legs strong{font-size:2.55rem}.triad-sum small,.triad-legs small{color:#77899b;font-weight:900}.triad-legs{grid-template-columns:1fr 1fr;gap:105px;margin-top:105px;display:grid;position:relative}.triad-legs:before,.triad-legs:after{content:"";z-index:0;background:#6d43c0;width:47%;height:5px;position:absolute;top:-61px}.triad-legs:before{left:10%;transform:rotate(-31deg)}.triad-legs:after{right:10%;transform:rotate(31deg)}.triad-legs>div{z-index:1;height:110px;position:relative}.triad-legs>div.blank{background:#f5f0ff;border-color:#6d43c0;animation:1.7s ease-in-out infinite blankPulse}.triad-legs>div.blank strong{color:#6d43c0}.answer-options{grid-template-columns:repeat(3,1fr);gap:14px;width:min(560px,100%);margin-top:34px;display:grid}.answer-options button{color:#17365d;background:#fff;border:2px solid #d5deea;border-radius:14px;padding:17px;font-size:1.55rem;font-weight:900;transition:all .15s;box-shadow:0 4px 12px #17365d12}.answer-options button:hover:not(:disabled){border-color:#6d43c0;transform:translateY(-2px)}.answer-options button.correct{color:#14753d;background:#dbf6e6;border-color:#29a560;transform:scale(1.04)}.answer-options button.wrong{color:#a62929;background:#ffe3e3;border-color:#d84b4b;animation:.3s wrongShake}.scoreboard li span small{max-width:155px}.start-card{max-width:850px!important}@keyframes blankPulse{50%{box-shadow:0 0 0 8px #6d43c01c}}@keyframes wrongShake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}@media (max-width:760px){.mode-grid{grid-template-columns:1fr 1fr}.game-switch{grid-template-columns:1fr}.triad-legs{gap:45px}.triad-legs:before,.triad-legs:after{width:43%}}@media (max-width:480px){.mode-grid{grid-template-columns:1fr}.triad-game{padding:12px}.triad-legs{gap:20px}.answer-options{gap:7px}.answer-options button{padding:14px 5px}}.progress{grid-template-columns:repeat(10,minmax(24px,34px));gap:10px;width:max-content;max-width:100%;margin:24px auto 38px;display:grid}.progress i,.progress i+i{width:34px;height:34px;margin-left:0}.progress i+i:before{display:none}@media (max-width:620px){.progress{grid-template-columns:repeat(5,30px);gap:8px}.progress i,.progress i+i{width:30px;height:30px;font-size:.8rem}}.race-header-actions{gap:8px;display:flex}.stair-modes{grid-template-columns:repeat(2,1fr)}.skip-score{color:#53677b!important;background:0 0!important;border:1px solid #ccd7e2!important;margin-top:8px!important}@media (max-width:640px){.race-header-actions{flex-direction:column}.stair-modes{grid-template-columns:1fr}}
