/* Passeio de carro: rua de três faixas que passa; o carro troca de faixa com o toque. */
.play-dirigir .toy-scene{background:#c9ecfb;--dv-size:140px}
.dv-far{position:absolute;left:0;width:200%;display:flex;z-index:1;pointer-events:none;will-change:transform}
.dv-far svg{flex:1;height:100%;display:block}
.dv-walk{position:absolute;left:0;right:0;z-index:2;background-image:repeating-linear-gradient(90deg,#0000000d 0 2px,transparent 2px 38px)!important}
.dv-road{position:absolute;left:0;right:0;z-index:2;background:linear-gradient(#7d8590,#6d7580);box-shadow:inset 0 5px 0 #5c636c,inset 0 -5px 0 #5c636c;--dash:0px}
.dv-road i{position:absolute;left:0;right:0;height:5px;background:repeating-linear-gradient(90deg,#fff 0 34px,transparent 34px 68px);background-position-x:var(--dash);opacity:.85}
.dv-road i:nth-child(1){top:calc(33.33% - 2px)}.dv-road i:nth-child(2){top:calc(66.66% - 2px)}
.dv-grass{position:absolute;left:0;right:0;bottom:0;z-index:2}
.dv-deco,.dv-world{position:absolute;inset:0;pointer-events:none}
.dv-deco{z-index:3}.dv-world{z-index:4}
.dv-thing{position:absolute;left:0;top:0;will-change:transform}
.dv-item{width:calc(var(--dv-size) * .5);height:calc(var(--dv-size) * .5)}
.dv-item.cr-special{width:calc(var(--dv-size) * .62);height:calc(var(--dv-size) * .62)}
.dv-item .art-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 4px #0002)}
.dv-cone{width:calc(var(--dv-size) * .3);height:calc(var(--dv-size) * .36);transform-origin:50% 100%}
.dv-cone svg{width:100%;height:100%;display:block}
.dv-friend{width:calc(var(--dv-size) * .5);height:calc(var(--dv-size) * .5)}
.dv-friend .art-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px #0002)}
.dv-goal{width:calc(var(--dv-size) * 1.2);height:calc(var(--dv-size) * 1.2)}
.dv-goal>svg{position:absolute;inset:0;width:100%;height:100%}
.dv-goal>i{position:absolute;top:-14%;width:14%;aspect-ratio:4/5;border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 35% 30%,#fff9 0 12%,transparent 13%),var(--c);animation:cr-float 1.3s ease-in-out infinite alternate}
.dv-tutu,.dv-maya{position:absolute;bottom:-4%;width:46%;aspect-ratio:3/4;transform-origin:50% 100%}
.dv-tutu{right:-38%}.dv-maya{left:-30%}
.dv-car{position:absolute;left:0;top:0;width:var(--dv-size);height:calc(var(--dv-size) * .76);z-index:3;will-change:transform}
.dv-car img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 3px #0003)}
.dv-flip img{scale:-1 1}
.dv-car-shadow{position:absolute;left:0;top:0;width:calc(var(--dv-size) * .84);height:calc(var(--dv-size) * .12);border-radius:50%;background:#000;opacity:.18;z-index:2}
.dv-puff{position:absolute;width:calc(var(--dv-size) * .12);aspect-ratio:1;border-radius:50%;background:#e8eef2;z-index:2}
.dv-lane-hint{position:absolute;left:0;right:0;background:linear-gradient(90deg,#fff0,#fff8 40%,#fff0);border-radius:12px}
.dv-pad{position:absolute;inset:0;z-index:10;touch-action:none;-webkit-tap-highlight-color:transparent;outline:0}
.dv-pad:focus-visible{box-shadow:inset 0 0 0 4px #2f7ff0}
.dv-tray{top:2%}
@media(prefers-reduced-motion:reduce){.dv-goal>i{animation:none}}
.dv-near{position:absolute;left:0;width:200%;display:flex;z-index:3;pointer-events:none;will-change:transform}
.dv-near svg{flex:1;height:100%;display:block}
