html,body{overscroll-behavior:none;height:100%;overflow:hidden}#game{background:var(--sky);touch-action:none;-webkit-user-select:none;user-select:none;transition:background-color 1.2s;position:fixed;inset:0;overflow:hidden}#game.is-past{--grain:1}#stage{position:absolute;inset:0}#stage canvas{width:100%;height:100%;display:block}#game.is-past #stage canvas{filter:sepia(.35)saturate(1.1)}.stars{opacity:0;image-rendering:pixelated;background-image:radial-gradient(2px 2px at 20% 30%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 70% 20%,#fff 50%,#0000 51%),radial-gradient(3px 3px at 40% 70%,#ffe14d 50%,#0000 51%),radial-gradient(2px 2px at 85% 60%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 10% 85%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 55% 45%,#bff0ff 50%,#0000 51%);background-size:240px 240px;transition:opacity 2s;position:absolute;inset:0}#game.is-space .stars{opacity:1;animation:3s steps(2,end) infinite twinkle}@keyframes twinkle{50%{opacity:.8;background-position:1px 0}}.scan{pointer-events:none;opacity:0;background:repeating-linear-gradient(0deg,#0000001f 0 2px,#0000 2px 4px);transition:opacity .2s;position:absolute;inset:0}#game.is-moving:has(#tape[data-mode=rewind]) .scan{opacity:1}.hud{padding:max(14px, env(safe-area-inset-top)) 16px 0;pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;top:0;left:0;right:0}.hud>*{pointer-events:auto}.hud__brand{border:3px solid var(--ink);box-shadow:var(--shadow);background:#fff;padding:8px 12px;font-size:12px}.hud__nav{gap:10px;display:flex}.score{pointer-events:none;position:absolute;top:78px;left:18px}#year{font-family:var(--px);color:#fff;text-shadow:3px 3px 0 var(--ink), -3px -3px 0 var(--ink), 3px -3px 0 var(--ink), -3px 3px 0 var(--ink), 0 6px 0 var(--ink);font-size:clamp(28px,5vw,44px)}#tape{font-family:var(--px);color:#fff;background:var(--ink);opacity:0;margin-top:10px;padding:6px 8px;font-size:11px;display:inline-block}#game.is-moving #tape{opacity:1;animation:.8s steps(2,end) infinite blink}#tape[data-mode=rewind]{background:var(--pink)}#tape[data-mode=ffwd]{background:var(--purple)}@keyframes blink{50%{opacity:.4}}#title{text-align:center;width:min(92vw,640px);transition:opacity .4s,transform .4s;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}#title.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%,-60%)}.logo{flex-direction:column;align-items:center;gap:4px;margin:0;display:flex}.logo span{color:#fff;background:var(--ink);text-shadow:0 5px #9aa0a8;padding:14px 18px 10px;font-size:clamp(34px,9vw,76px);line-height:1;display:inline-block;transform:rotate(-4deg);box-shadow:8px 8px #00000040}.logo span+span{transform:rotate(-4deg)translate(8%)}.title__sub{font-family:var(--px);background:var(--yellow);border:3px solid var(--ink);margin:26px 0 18px;padding:8px 10px;font-size:clamp(10px,2.2vw,13px);display:inline-block}.title__btns{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.title__hint{font-family:var(--px);color:var(--ink);opacity:.7;margin-top:18px;font-size:9px}.dock{padding:0 16px max(14px, env(safe-area-inset-bottom));pointer-events:none;grid-template-columns:minmax(0,400px) 1fr auto;grid-template-areas:"card.controls""track track track";align-items:end;gap:12px 16px;transition:opacity .4s;display:grid;position:absolute;bottom:0;left:0;right:0}.dock>*{pointer-events:auto}#game.has-title .dock{opacity:0;pointer-events:none}#game.has-title .dock>*{pointer-events:none}#game.has-title #bubbles{opacity:0}#card{grid-area:card;padding:18px 20px;transition:opacity .25s,transform .25s}#game.is-moving #card{opacity:0;transform:translateY(12px)}.card__era{font-family:var(--px);text-transform:uppercase;color:var(--muted);font-size:9px}#card[data-era=past] .card__era{color:#b07a1a}#card[data-era=now] .card__era{color:var(--teal)}#card[data-era=future] .card__era{color:var(--pink)}#card[data-era=company] .card__era{color:var(--purple)}.card__badge{font-family:var(--px);background:var(--yellow);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);margin-top:8px;padding:5px 7px;font-size:9px;line-height:1.4;display:inline-block}.card__title{margin:8px 0 6px;font-size:16px}.card__role{font-size:15px;font-weight:700}.card__blurb{margin:6px 0 0;font-size:15px;line-height:1.5}.card__links{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.controls{grid-area:controls;gap:10px;display:flex}.controls .pxbtn{padding:14px 16px;font-size:14px}.controls small{font-size:9px}#track{scrollbar-width:none;grid-area:track;gap:4px;padding:4px 2px 6px;display:flex;overflow-x:auto}#track::-webkit-scrollbar{display:none}.dot{min-width:58px;font-family:var(--px);border:2px solid var(--ink);cursor:var(--cur-hand);color:var(--ink);background:#ffffffbf;flex:1 0 auto;padding:8px 6px;font-size:8px;line-height:1.2}.dot--past{background:#fff1d6d9}.dot--company{background:#e7e3ffd9}.dot.is-done{background:#fff}.dot.is-on{background:var(--yellow);box-shadow:3px 3px 0 var(--ink);transform:translateY(-2px)}.dot:hover{background:#fff}#bubbles{pointer-events:none;position:absolute;inset:0}.bubble{max-width:220px;font-family:var(--px);color:var(--ink);border:3px solid var(--ink);opacity:0;will-change:transform;background:#fff;padding:8px 10px;font-size:12px;line-height:1.5;animation:.35s steps(4,end) forwards pop;position:absolute;top:0;left:0;box-shadow:4px 4px #00000040}.bubble:after{content:"";border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);clip-path:polygon(0 0,100% 0,100% 100%);background:#fff;width:12px;height:12px;margin-left:-6px;position:absolute;bottom:-12px;left:50%}@keyframes pop{0%{opacity:0;margin-top:10px}to{opacity:1;margin-top:-12px}}.skip{font-family:var(--px);color:var(--ink);opacity:.6;font-size:8px;position:absolute;top:70px;right:16px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.route-badge{font-family:var(--px);color:var(--pink);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);background:#fff;padding:5px 7px;font-size:8px;text-decoration:none;position:absolute;top:90px;right:18px}.hatched{text-align:center;width:min(92vw,380px);animation:.35s steps(4,end) forwards pop;position:absolute;top:22%;left:50%;transform:translate(-50%)}.hatched[hidden]{display:none}.hatched__title{font-family:var(--px);margin:0 0 10px;font-size:13px}.hatched__body{margin:0 0 16px;font-size:15px}.hatched__btns{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.noscript{position:absolute;top:40%;left:16px;right:16px}#game.is-broken:after{content:"The 3D world could not start on this device.";text-align:center;font-family:var(--px);font-size:12px;position:absolute;top:45%;left:0;right:0}@media (width<=760px){.dock{grid-template-columns:1fr auto;grid-template-areas:"card card""track controls";gap:10px}#card{padding:14px 16px}.card__title{font-size:13px}.card__blurb,.card__role{font-size:14px}.controls .pxbtn{padding:12px}.controls small{display:none}.score{top:70px}.hud__nav .pxbtn{padding:8px;font-size:8px}.hud__brand .brand__name{display:none}.bubble{max-width:160px;font-size:9px}.skip{display:none;top:auto;bottom:8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.route-badge{top:64px}}
