.grand-game-page{background:#d8efff}.grand-app{background:#fff8ee}.grand-title-wrap{text-align:center;line-height:1}.grand-subtitle{font-size:.7rem;font-weight:1000;color:#dbeeff;margin-top:4px;text-transform:uppercase;letter-spacing:.05em}.grand-score{min-width:58px;height:46px;padding:0 10px;border-radius:16px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;gap:5px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)}
.grand-progress-wrap{padding:12px 14px 14px;background:#fff;border-bottom:1px solid #f0dfca;box-shadow:0 8px 18px rgba(126,76,18,.08)}.grand-progress-label{text-align:center;color:#8a4b14;font-size:.72rem;font-weight:1000;letter-spacing:.06em}.grand-track{position:relative;height:88px;margin-top:4px}.grand-track-line{position:absolute;left:3%;right:7%;top:48px;height:12px;border-radius:999px;background:#505a62;box-shadow:inset 0 0 0 3px #353d43}.grand-track-line:after{content:"";position:absolute;left:2%;right:2%;top:4px;height:4px;background:repeating-linear-gradient(90deg,#fff 0 18px,transparent 18px 35px)}.grand-checkpoints{position:absolute;left:3%;right:8%;top:35px;display:grid;grid-template-columns:repeat(6,1fr)}.grand-checkpoints i{justify-self:center;width:25px;height:25px;border-radius:50%;background:#fff;border:4px solid #b7c0c8;z-index:2}.grand-checkpoints i.done{background:#45cf76;border-color:#248f4b}.grand-checkpoints i.current{background:#ffd33b;border-color:#d89109;transform:scale(1.18)}.grand-racer{position:absolute;left:1%;top:0;width:84px;z-index:4;transition:left .65s cubic-bezier(.2,.8,.2,1)}.grand-racer svg{width:100%;filter:drop-shadow(0 5px 4px rgba(0,0,0,.2))}.grand-flag{position:absolute;right:0;top:0;font-size:2.5rem}
.grand-world{position:relative;min-height:590px;padding:22px 14px 145px;background:linear-gradient(#ffe9c7,#f8f4e9 45%,#eaf7ff)}.grand-challenge{width:min(100%,620px);min-height:275px;margin:0 auto;padding:18px;border-radius:28px;background:#fff;box-shadow:0 14px 34px rgba(114,73,26,.16);border:2px solid #f0dfc6;display:grid;align-content:center;justify-items:center;text-align:center}.grand-kicker{font-size:.7rem;font-weight:1000;color:#a36b2f;letter-spacing:.09em}.grand-challenge h2{margin:5px 0 12px;color:#0b326d;font-size:1.35rem}.grand-main-number{display:grid;place-items:center;width:112px;height:112px;border-radius:28px;background:#eaf5ff;color:#0a69ca;font-size:4.3rem;font-weight:1000;box-shadow:0 8px 0 #b7d6ef}.grand-count-cars{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;width:min(100%,330px)}.grand-count-cars div{min-width:0}.grand-count-cars svg{width:100%}.grand-logo{width:min(100%,270px)}.grand-logo svg{width:100%;max-height:125px}.grand-color-car{width:190px}.grand-color-car svg{width:100%}.grand-shape-target{width:110px;height:110px;display:grid;place-items:center}.grand-shape{width:78px;height:78px;background:#24a865}.grand-shape.circle{border-radius:50%}.grand-shape.triangle{clip-path:polygon(50% 5%,95% 92%,5% 92%)}.grand-shape.square{border-radius:10px}.grand-shape.rectangle{width:96px;height:62px;border-radius:10px}.grand-sequence{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap}.grand-sequence span{display:grid;place-items:center;width:57px;height:57px;border-radius:15px;background:#eef6ff;color:#0b326d;font-size:1.7rem;font-weight:1000}.grand-sequence span.missing{background:#ffcf3b;color:#744000}
.grand-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;width:min(100%,560px);margin:16px auto 0}.grand-answer{min-height:78px;border:0;border-radius:21px;background:linear-gradient(#fff,#edf5ff);color:#0b326d;font-size:2rem;font-weight:1000;padding:9px;box-shadow:0 7px 0 #b8c7d5,0 11px 22px rgba(0,0,0,.13)}.grand-answer:active{transform:translateY(3px)}.grand-answer.bad{animation:grandShake .3s;background:#ffe7ea;color:#ce2d3b}.grand-answer.good{background:linear-gradient(#5dde8b,#2bc566);color:#fff;box-shadow:0 7px 0 #198e46}.grand-answer.locked{pointer-events:none}.grand-answer svg{width:100%;max-height:70px}.grand-answer .color-chip{display:block;width:58px;height:58px;margin:auto;border-radius:18px;border:5px solid #fff;box-shadow:0 0 0 3px rgba(9,49,92,.18)}.grand-answer .shape-chip{display:block;width:58px;height:58px;margin:auto;background:#297bc9}.grand-answer .shape-chip.circle{border-radius:50%}.grand-answer .shape-chip.triangle{clip-path:polygon(50% 5%,95% 92%,5% 92%)}.grand-answer .shape-chip.square{border-radius:8px}.grand-answer .shape-chip.rectangle{width:72px;height:48px;border-radius:8px}.grand-feedback{min-height:42px;margin:13px auto 0;text-align:center;font-weight:1000;color:#138548;opacity:0;transition:.15s}.grand-feedback.show{opacity:1}.grand-feedback.bad{color:#ce2e3b}.grand-reset{display:block;margin:4px auto 0;border:0;background:transparent;color:#7d8997;font-size:.72rem;font-weight:1000;padding:10px}
.grand-finish{position:absolute;inset:0;z-index:20;background:rgba(82,45,8,.72);display:grid;place-items:center;padding:22px;backdrop-filter:blur(5px)}.grand-finish-card{width:min(100%,400px);padding:28px 20px;border-radius:30px;background:#fff;text-align:center;box-shadow:0 22px 60px rgba(0,0,0,.32)}.grand-trophy{font-size:4rem}.grand-finish-card h2{font-size:2rem;margin:5px 0;color:#8a4b14}.grand-finish-card p{margin:0;color:#6d7d97;font-weight:800}.grand-finish-stars{font-size:1.6rem;margin:16px 0}.grand-finish-card button{border:0;border-radius:18px;background:linear-gradient(#ffb936,#ef8520);color:#fff;padding:14px 20px;font-weight:1000;box-shadow:0 6px 0 #bd5c10}
@keyframes grandShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}
@media(max-width:430px){.grand-world{min-height:565px;padding-left:8px;padding-right:8px}.grand-progress-wrap{padding-left:8px;padding-right:8px}.grand-racer{width:72px}.grand-challenge{min-height:250px;padding:13px}.grand-answers{gap:6px}.grand-answer{min-height:72px;border-radius:17px;padding:6px}.grand-count-cars{width:280px}.grand-main-number{width:98px;height:98px;font-size:3.8rem}}@media(prefers-reduced-motion:reduce){.grand-racer,.grand-answer,.grand-feedback{animation:none!important;transition:none!important}}
