:root{--f-pixel: "Press Start 2P", var(--f-mono)}.ow{position:relative;height:100vh;overflow:hidden;background:#1a43c4}.ow-cam{position:absolute;left:0;top:0;will-change:transform}.ow-map{display:block;image-rendering:pixelated}.ow-me{position:absolute;left:0;top:0;z-index:3;image-rendering:pixelated;pointer-events:none}.lv-node{position:absolute;z-index:2;width:0;height:0}.lv-node i{position:absolute;left:calc(var(--px) * -2.5);top:calc(var(--px) * -2.5);width:calc(var(--px) * 5);height:calc(var(--px) * 5);background:var(--white);border:calc(var(--px) * .8) solid var(--ink);transition:background .3s,transform .3s}.lv-node em{position:absolute;left:50%;top:calc(var(--px) * 3.4);transform:translate(-50%);padding:4px 6px;background:var(--ink);color:var(--white);font:400 10px/1 var(--f-pixel);font-style:normal;white-space:nowrap}.lv-node.done i{background:var(--red)}.lv-node.here i{background:var(--yellow);transform:scale(1.25);animation:lv-pulse .9s steps(2) infinite}@keyframes lv-pulse{50%{background:var(--white)}}.ow-hud{position:absolute;z-index:4;left:6vw;top:calc(var(--win-top) + 100px);color:var(--white);pointer-events:none}.ow-k{font:400 12px/1 var(--f-pixel);color:var(--yellow);text-transform:uppercase}.ow-title{margin:2.4vh 0 2vh;font:400 clamp(30px,4.4vw,68px)/1.15 var(--f-pixel);text-transform:uppercase;text-shadow:6px 6px 0 var(--ink)}.ow-hint{font:400 12px/1 var(--f-pixel);animation:ow-blink 1s steps(1) infinite}@keyframes ow-blink{50%{opacity:0}}.lv-card{position:absolute;z-index:5;top:calc(var(--win-top) + 84px);right:calc(var(--gut) + 24px);width:min(400px,32vw);max-height:calc(100vh - var(--win-top) - var(--gut) - 120px);overflow:auto;padding:18px 20px 20px;background:#12131a;color:var(--white);border:4px solid var(--white);outline:4px solid var(--ink);box-shadow:10px 10px 0 var(--ink);visibility:hidden;opacity:0;transform:translate(40px);transition:opacity .35s,transform .5s cubic-bezier(.2,.9,.3,1.2),visibility 0s .5s}.lv-card.is-open{visibility:visible;opacity:1;transform:none;transition:opacity .35s,transform .5s cubic-bezier(.2,.9,.3,1.2),visibility 0s}.lv-world{font:400 13px/1 var(--f-pixel);color:var(--yellow);text-transform:uppercase}.lv-photo{position:relative;margin:14px 0 12px;border:3px solid var(--white);background:var(--white)}.lv-photo img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover}.lv-photo img.logo{object-fit:contain;padding:16px}.lv-photo figcaption{position:absolute;left:8px;bottom:8px;padding:4px 7px;background:var(--ink);font:400 9px/1 var(--f-pixel);text-transform:uppercase}.lv-when{font:400 12px/1.3 var(--f-mono);color:#aaa}.lv-role{margin:8px 0 6px;font:400 clamp(15px,1.4vw,19px)/1.35 var(--f-pixel);text-transform:uppercase}.lv-org{font:400 14px/1.3 var(--f-mono);color:var(--yellow)}.lv-desc{margin-top:10px;font:400 14px/1.5 var(--f-mono);color:#ddd}.lv-clear{margin-top:14px;font:400 10px/1 var(--f-pixel);color:#28c840;text-transform:uppercase}.ow-progress{position:absolute;z-index:5;left:calc(var(--gut) + 28px);right:calc(var(--gut) + 28px);bottom:calc(var(--gut) + 22px);height:14px;border:3px solid var(--white);background:var(--ink)}.ow-progress span{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,var(--yellow) 0 10px,#e0b000 10px 14px)}.ow-mode{position:absolute;z-index:6;right:calc(var(--gut) + 28px);bottom:calc(var(--gut) + 52px);display:flex;padding:4px;gap:4px;border:3px solid var(--ink);background:var(--white);cursor:pointer;box-shadow:5px 5px 0 var(--ink)}.ow-mode span{padding:9px 14px;font:400 11px/1 var(--f-pixel);text-transform:uppercase;color:var(--ink);transition:background .2s,color .2s}.ow-mode .om-scroll,.ow-mode[aria-pressed=true] .om-drive{background:var(--ink);color:var(--yellow)}.ow-mode[aria-pressed=true] .om-scroll{background:transparent;color:var(--ink)}.ow-mode:hover{transform:translateY(-2px)}.ow-car{position:absolute;left:0;top:0;z-index:3;width:0;height:0;display:none;will-change:transform}.ow-car canvas{position:absolute;transform:translate(-50%,-50%);image-rendering:pixelated;filter:drop-shadow(3px 4px 0 rgba(0,0,0,.35))}.ow-puff{position:absolute;z-index:2;width:10px;height:10px;margin:-5px 0 0 -5px;background:#ffffffd9;pointer-events:none}.ow-drive-hud,.ow-pad{display:none}.is-driving .ow-car{display:block}.is-driving .ow-me,.is-driving .ow-hud,.is-driving .ow-progress{display:none}.is-driving .ow-drive-hud{display:block;position:absolute;z-index:5;left:calc(var(--gut) + 28px);bottom:calc(var(--gut) + 22px);color:var(--white)}.ow-found{font:400 16px/1 var(--f-pixel);color:var(--yellow);text-transform:uppercase;text-shadow:3px 3px 0 var(--ink)}.ow-keys{margin-top:10px;font:400 13px/1.3 var(--f-mono)}.ow-pad{position:absolute;z-index:6;right:calc(var(--gut) + 18px);bottom:calc(var(--gut) + 18px);grid-template-columns:repeat(3,56px);grid-template-rows:56px 56px;gap:6px}.ow-pad button{border:3px solid var(--ink);background:var(--white);font-size:18px;cursor:pointer;box-shadow:3px 3px 0 var(--ink);user-select:none;-webkit-user-select:none;touch-action:none}.ow-pad button:active{background:var(--yellow);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.ow-pad button[data-k=up]{grid-column:2}.ow-pad button[data-k=left]{grid-column:1;grid-row:2}.ow-pad button[data-k=down]{grid-column:2;grid-row:2}.ow-pad button[data-k=right]{grid-column:3;grid-row:2}@media(pointer:coarse),(max-width:860px){.is-driving .ow-pad{display:grid}.ow-keys{display:none}.is-driving .ow-drive-hud{top:calc(var(--win-top) + 66px);bottom:auto;left:16px}.is-driving .ow-mode{bottom:calc(var(--gut) + 156px)}}@media(max-width:860px){.ow-mode{right:14px}.is-driving .lv-card{top:calc(var(--win-top) + 92px);bottom:auto;max-height:34vh;padding:10px 12px;display:grid;grid-template-columns:92px 1fr;column-gap:12px;align-items:start}.is-driving .lv-card>*{grid-column:2}.is-driving .lv-photo{grid-column:1;grid-row:1 / 5;margin:0}.is-driving .lv-photo img{aspect-ratio:1}.is-driving .lv-photo figcaption{display:none}.is-driving .lv-role{font-size:12px;margin:6px 0 4px}.is-driving .lv-org,.is-driving .lv-when{font-size:11px}.ow-hud{left:22px;top:calc(var(--win-top) + 80px)}.lv-card{left:14px;right:14px;width:auto;top:calc(var(--win-top) + 66px);max-height:44vh;padding:12px 14px}.lv-photo{margin:10px 0 8px}.lv-photo img{aspect-ratio:16 / 7}.lv-desc,.lv-clear{display:none}.ow-progress{left:14px;right:14px}}
