*,*:before,*:after{box-sizing:border-box;-webkit-user-select:none;user-select:none}:root{--border-color: #aaa;--border-dark-color: #7777;--text-color: #eee;--text-color-hover: #eee;--text-color-active: #ddd}img,#game-canvas{image-rendering:pixelated;image-rendering:-moz-crisp-edges}img{user-drag:none;-webkit-user-drag:none;user-select:none;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}body{background-color:#111;font-family:Arial,sans-serif;margin:0;padding:0;display:flex;justify-content:center;align-items:center;min-height:100vh;display:grid;place-items:center;overflow:hidden}#app{isolation:isolate;position:relative;scale:1.5}#game-scene,#selection-scene{position:relative;isolation:isolate}#game-pause-overlay{box-sizing:border-box;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;color:var(--text-color);display:none;justify-content:center;align-items:center;font:700 4rem monospace,monospace}.dialog-overlay{position:absolute;box-sizing:border-box;display:none;width:100%;height:100%;top:0;left:0;background-color:#0003;justify-content:flex-start;align-items:flex-end;padding:2rem;padding-bottom:240px;margin:auto;color:var(--text-color);font-family:Pixelify Sans,sans-serif}.dialog-overlay__text{padding:1rem 1rem 1.8rem;text-align:left;border:3px solid var(--border-dark-color);background-color:#0008;border-radius:2px;position:relative}.dialog-overlay__text:after{content:"press enter to continue";font-size:.7rem;font-style:italic;color:#eeea;position:absolute;bottom:.5rem;right:.5rem}.speed-meter__wrapper{width:60%;margin:0 auto;display:block;scale:.5;position:absolute;left:50%;transform:translate(-100%,-100%)}.speed-meter__inner{width:100%;position:relative;display:block}.speed-meter__wrapper img#speed-meter{width:100%}.speed-meter__wrapper div#nitro-indicator{--current-sprite: 0;background-image:url(/assets/ui/indicators/nitro-sprite.png);--icon-size: 18px;background-position-x:calc(var(--current-sprite) * var(--icon-size));width:var(--icon-size);height:var(--icon-size);position:absolute;bottom:16px;--some-offset: 10px;left:calc(50% - var(--icon-size) - var(--some-offset))}.speed-meter__wrapper div#obstacle-drop-indicator{--current-sprite: 0;background-image:url(/assets/ui/indicators/obstacle-drop.png);--icon-size: 18px;background-position-x:calc(var(--current-sprite) * var(--icon-size));width:var(--icon-size);height:var(--icon-size);position:absolute;bottom:16px;--some-offset: 10px;left:calc(50% + var(--icon-size) - var(--some-offset))}.acc-tip,.speed-tip{position:absolute;height:25%;width:4px;top:50%;transform-origin:top center;background-color:red;transition:transform .1s linear}.acc-tip{--acc-rotation: 0deg;left:31%;transform:translate(-50%,-0%) rotate(calc(var(--acc-rotation) - 60deg))}.speed-tip{--speed-rotation: 0deg;left:69%;transform:translate(-50%,-0%) rotate(calc(var(--speed-rotation) - 60deg))}.scene{width:320px;aspect-ratio:320 / 182;scale:3;box-shadow:#0000000d 0 6px 24px,#00000014 0 0 0 2px;border:.05rem solid var(--border-color);border-radius:2px;overflow:hidden;color:var(--text-color);font-family:Pixelify Sans,sans-serif;font-optical-sizing:auto}.scene.hidden{display:none!important}#start-scene .inner,#selection-scene .inner,#result-scene .inner,#about-scene .inner,#game-scene .inner,#countdown-scene .inner{width:100%;height:100%;padding-left:5px;padding-bottom:5px;display:flex;flex-direction:column;gap:5px}#start-scene button:first-of-type,#result-scene button:first-of-type,#about-scene button:first-of-type{margin-top:auto}#about-scene p{font-size:12px}#start-scene button,#selection-scene button:not(.selection__button,.color-box),#result-scene button,#about-scene button,.skip__wrapper button{border-radius:1px;background-color:transparent;color:var(--text-color);border:none;padding:.25rem 0;font-size:12px;width:3.5rem;text-align:center;border:1px solid var(--text-color);cursor:pointer;font-family:inherit;outline:none}#start-scene button.mainBtn,#selection-scene button.mainBtn,#result-scene button.mainBtn,#about-scene button.mainBtn{background-color:var(--text-color);color:#000;transition:all .2s}#start-scene button.mainBtn:hover,#selection-scene button.mainBtn:hover,#result-scene button.mainBtn:hover,#about-scene button.mainBtn:hover{background-color:var(--text-color-hover);border-color:var(--text-color-hover)}#start-scene button.mainBtn:active,#selection-scene button.mainBtn:active,#result-scene button.mainBtn:active,#about-scene button.mainBtn:active{background-color:var(--text-color-active);border-color:var(--text-color-active)}#start-scene h1,#selection-scene h2,#result-scene h2,#about-scene h2{margin:0}#selection-scene h2,#result-scene h2,#about-scene h2{font-size:17px}h1{margin:0}#game-scene,#selection-scene,#result-scene,#about-scene,#tutorial-scene,#countdown-scene{display:none}#result-scene{overflow:hidden}.options{display:flex;gap:20px}.winner-section{text-align:center;margin-bottom:10px;background-size:contain;background-repeat:no-repeat;background-position:center;display:flex;justify-content:center;flex-direction:column;font-size:10px;align-items:center}#result-scene img{width:200px;position:absolute;left:50%;transform:translate(-50%,5%);z-index:-1}.race-results,.player-history{margin-top:10px!important;background-color:#000d;padding:3px;border-radius:1px;border:1px solid var(--border-dark-color);width:calc(100% + 5px)}.race-results ul,.player-history ul{list-style:none;padding:0;display:flex;gap:10px}.race-results li,.player-history li{padding:2px 0}.race-results,.player-history{white-space:nowrap;position:relative;overflow:hidden}.race-results ul,.player-history ul{display:flex;gap:5px;padding:0;width:fit-content;margin:0;list-style:none;position:relative}@keyframes scrollAnimation{0%{transform:translate(2%)}to{transform:translate(calc(-100% + 280px))}}.race-results ul li{width:max-content;text-wrap:none}#result-scene h3{font-size:11px}#result-scene li{font-size:9px}#result-scene *{margin:0}#result-scene .wrapper{display:flex;flex-direction:column;margin-right:10px}#selection-scene .option{cursor:pointer}.scoreboard__wrapper{z-index:10;position:absolute;right:0;top:0;padding:.7rem;background-color:#3339;color:#aaa;font-family:Pixelify Sans,sans-serif;display:flex;flex-direction:column;align-items:flex-end}.scoreboard__wrapper ul{list-style-type:none;margin:0;padding:0;margin-bottom:1px solid #aaa;text-align:right}.scoreboard__wrapper ul li .highlight{font-weight:700;margin-left:.3rem}.scoreboard__wrapper ul li.current .highlight{color:#fff}.scoreboard__wrapper ul li{margin-bottom:.5rem}.scoreboard__wrapper ul li.current{font-size:1.05rem;color:#fff}.scoreboard__wrapper h3{margin:0}.scoreboard__wrapper h3 .highlight{color:#3acf61;margin-left:.5rem}.dialog{position:absolute;left:50%;top:50%;width:100%;height:100%;place-items:center;background-color:#000c;transform:translate(-50%,-50%);display:none}.dialog__inner{display:flex;flex-direction:column;align-items:center;gap:10px}.dialog button{width:fit-content!important}.dialog input{border:1px solid black;border-radius:0;font-family:Pixelify Sans,sans-serif}.dialog input:focus{outline:none}.btn_wrapper{display:flex;gap:10px}.btn_wrapper>button{padding:3px!important}#start-scene{position:relative;display:none}#countdown-scene{position:absolute;background-color:#000c;text-align:center;left:33.3%;top:33.3%;z-index:11}.countdown_text{font-size:30px}#countdown-scene p{font-size:80px;margin:0}.start-scene__bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1}#about-scene .start-scene__bg{filter:brightness(.5)}#start-scene .inner{background:linear-gradient(to right,#0009,#0000 60%)}.skip__wrapper{position:absolute;right:50px;bottom:50px;display:none}.skip__wrapper button{width:auto;width:120px;font-size:30px;color:#fff;background-color:#000;border:3px solid white;font-family:Pixelify Sans,sans-serif}#loading-screen>*{margin:0;padding:0}#loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.7rem;border:none;background-color:#111;font-size:.6rem}#loading-screen img{width:3rem;aspect-ratio:1 / 1;object-fit:cover;animation:rotate ease-in-out 2s forwards infinite}#selection-scene{background-image:url(/assets/ui/level-selection-screen-v2.png);-webkit-backdrop-filter:brightness(.5);backdrop-filter:brightness(.5);background-size:cover}#selection-scene .inner{margin-inline:auto;width:fit-content;display:flex;flex-direction:column;align-items:center}.selection-card{box-sizing:border-box;width:5.2rem;overflow:hidden;display:flex;flex-direction:column;position:relative;gap:.4rem;background-color:#0a0a0ab3;border-radius:2px;padding:.4rem .4rem .35rem;border:.05rem solid var(--border-dark-color)}.selection-card .selection-card__image{width:100%;aspect-ratio:1 / 1;border-radius:1px;object-fit:cover;padding:0;margin:0}.selection-card:not(:first-of-type) .selection-card__image{object-position:0% 0%;position:relative;isolation:isolate}.car-preview{--image-url: url(/assets/sprites/opel_blue.png)}.selection-card:not(:first-of-type) .selection-card__image:after{content:"";position:absolute;width:100%;height:100%;top:10%;left:0;image-rendering:pixelated;image-rendering:-moz-crisp-edges;background-image:var(--image-url);background-position:0%,0%;background-size:6000% 100%;animation:car-image-rotation 7s steps(60) infinite}.selection-card__wrapper{margin-top:auto;width:100%;display:flex;justify-content:center;gap:2rem}#selection-scene .inner .flex{margin-top:auto;display:flex;justify-content:space-between;width:100%}.color-selection{--box-size: 8px;--gap-size: .25rem;padding:0;box-sizing:border-box;position:absolute;bottom:0;right:.2rem;display:flex;justify-content:flex-end;align-items:center;gap:var(--gap-size);width:fit-content;overflow:hidden;transition:max-width .3s ease;max-width:100%;height:var(--box-size);padding-right:calc(var(--gap-size) + var(--box-size));z-index:10}.color-selection.active{max-width:10rem}.color-box{outline:none;width:var(--box-size);height:var(--box-size);padding:0;margin:0;cursor:pointer;opacity:1;transition:opacity .3s ease;transition-property:opacity,transform,right,position}.color-selection:not(.active) .color-box:not(.selected){opacity:0;transform:translate(var(--box-size))}.color-box.selected{opacity:1;transform:translate(0);z-index:11}.color-box.selected{position:absolute;bottom:0;right:0rem}.color-box[data-color=black]{background-color:#000;border:1px solid #fff3}.color-box[data-color=blue]{background-color:#00f;border:1px solid #fff3}.color-box[data-color=green]{background-color:green;border:1px solid #0003}.color-box[data-color=pink]{background-color:pink;border:1px solid #0003}.color-box[data-color=white]{background-color:#fff;border:1px solid #0003}.color-box[data-color=yellow]{background-color:#ff0;border:1px solid #0005}.title{display:flex;font-size:.45rem;width:3rem;overflow:hidden;position:relative}.selection__option{min-width:100%;text-align:center;transition:transform .3s ease-in-out;font-weight:700;white-space:nowrap}.selection__wrapper{display:flex;align-items:center;justify-content:space-between}.selection__wrapper .selection__button{background:transparent;color:var(--text-color);border:none;outline:none;padding:0rem;font-size:.5rem;z-index:10}.dialog.tutorial{z-index:100;padding:1rem;font-size:.8rem!important;text-align:center}.dialog.tutorial h2{font-size:.7rem!important}.dialog.tutorial button{z-index:102;padding-inline:.5rem!important;font-size:.5rem!important}@keyframes rotate{0%{rotate:0deg}to{rotate:360deg}}@keyframes car-image-rotation{0%{background-position:0% 0%}to{background-position:6000% 0%}}
