:root{--paper:#fbf6ec;--paper-2:#f3ecdd;--ink:#1f2430;--ink-2:#5b606b;--line:#e2d8c5;--red:#e5484d;--red-ink:#b8323a;--shadow:0 1px 0 #ffffffb3 inset, 0 18px 50px -18px #3c2d1459, 0 3px 10px #3c2d1414;--serif:"Fraunces", Georgia, serif;--sans:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--hand:"Caveat", "Bradley Hand", cursive;--safe-b:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--sans);-webkit-tap-highlight-color:transparent;background:#efe8da;margin:0;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none}canvas#c{width:100%;height:100%;display:block;position:fixed;inset:0}.hidden{display:none!important}button{font:inherit;color:inherit;cursor:pointer}#hud{pointer-events:none;position:fixed;inset:0}.hud-top{top:max(14px, env(safe-area-inset-top));align-items:center;gap:12px;display:flex;position:absolute;left:16px;right:16px}.brand{flex-direction:column;margin-right:auto;line-height:1;display:flex}.brand .mark{font-family:var(--serif);letter-spacing:-.01em;font-size:22px;font-style:italic;font-weight:700}.brand .label{color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase;margin-top:4px;font-size:12px}.chips{gap:6px;display:flex}.chip{-webkit-backdrop-filter:blur(8px);background:#fbf6ecdb;border:1px solid #e2d8c5e6;border-radius:12px;flex-direction:column;align-items:center;min-width:58px;padding:6px 10px 5px;display:flex}.chip b{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:20px;line-height:1}.chip span{color:var(--ink-2);letter-spacing:.05em;text-transform:uppercase;margin-top:2px;font-size:10.5px}.chip.bump{animation:.45s bump}.chip.bad b{color:var(--red-ink)}@keyframes bump{30%{transform:scale(1.18)}}.tools{pointer-events:auto;gap:6px;display:flex}.tool{-webkit-backdrop-filter:blur(8px);background:#fbf6ecdb;border:1px solid #e2d8c5e6;border-radius:12px;place-items:center;width:40px;height:40px;font-size:17px;display:grid}.tool:active{transform:scale(.94)}.tool.off{opacity:.45}.say{left:50%;top:calc(max(14px, env(safe-area-inset-top)) + 64px);opacity:0;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);font-family:var(--hand);text-align:center;border-radius:14px;max-width:min(84vw,420px);padding:8px 14px 6px;font-size:24px;line-height:1.05;transition:opacity .25s,transform .25s;position:absolute;transform:translate(-50%,-8px)}.say.show{opacity:1;transform:translate(-50%)}.say:before{content:"Examiner";font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-bottom:2px;font-size:10px;display:block}.keys{color:var(--ink-2);white-space:nowrap;background:#fbf6eccc;border:1px solid #e2d8c5e6;border-radius:99px;padding:7px 14px;font-size:13px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}kbd{font-family:var(--sans);background:var(--paper);border:1px solid var(--line);color:var(--ink);border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-size:12px}.controls{display:none}body.touch .controls{display:block}body.touch .desktop-only{display:none}.controls{position:absolute;inset:0}.controls .zone{top:calc(max(14px, env(safe-area-inset-top)) + 56px);pointer-events:auto;touch-action:none;position:absolute;bottom:0}.controls .zone.steer{width:50%;left:0}.controls .zone.drive{width:50%;right:0}.controls .cue{bottom:calc(132px + var(--safe-b));letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);opacity:.75;pointer-events:none;font-size:11px;line-height:1.35;transition:opacity .4s;position:absolute}.controls .zone.steer .cue{left:22px}.controls .zone.drive .cue{right:18px;bottom:calc(164px + var(--safe-b));text-align:right;white-space:nowrap}.controls.used .cue{opacity:0}.controls .wheel{left:16px;bottom:calc(16px + var(--safe-b));pointer-events:none;-webkit-backdrop-filter:blur(8px);width:92px;height:92px;color:var(--ink);background:#fbf6ecd1;border:1px solid #e2d8c5e6;border-radius:50%;transition:box-shadow .2s,border-color .2s;position:absolute;box-shadow:0 10px 24px -14px #3c2d1473}.controls .wheel svg{width:100%;height:100%;display:block;position:absolute;inset:0}.controls .wheel .dial{color:var(--ink-2)}.controls .wheel .knob{width:calc(100% - 16px);height:calc(100% - 16px);transition:transform 50ms linear;inset:8px}.controls .wheel.full{border-color:var(--red);box-shadow:0 0 0 3px #e5484d2e,0 10px 24px -14px #3c2d1473}.controls.steering .wheel{transform:scale(1.04)}.controls .autocentre{pointer-events:auto;touch-action:manipulation;white-space:nowrap;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);-webkit-backdrop-filter:blur(8px);background:#fbf6ecd1;border:1px solid #e2d8c5e6;border-radius:99px;padding:6px 10px 5px;font-size:10.5px;font-weight:600;position:absolute;bottom:4px;left:calc(100% + 8px)}.controls .autocentre:before{content:"";vertical-align:1px;background:#d6ccb8;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.controls .autocentre.on{color:var(--ink)}.controls .autocentre:focus{outline:none}.controls .autocentre:focus-visible{outline:2px solid var(--red-ink);outline-offset:2px}.controls .autocentre.on:before{background:var(--red)}.controls .gauge{right:16px;bottom:calc(16px + var(--safe-b));pointer-events:none;-webkit-backdrop-filter:blur(8px);background:#fbf6ecd1;border:1px solid #e2d8c5e6;border-radius:99px;flex-direction:column;align-items:center;gap:6px;width:46px;padding:8px 0;display:flex;position:absolute;box-shadow:0 10px 24px -14px #3c2d1473}.controls .pedal{font-family:var(--serif);color:var(--ink-2);font-size:15px;font-weight:600;line-height:1;transition:color .15s}.controls .pedal.on{color:var(--red-ink)}.controls .gauge-track{background:var(--paper-2);width:8px;height:74px;box-shadow:inset 0 0 0 1px var(--line);border-radius:99px;position:relative;overflow:hidden}.controls .gauge-track:after{content:"";background:var(--ink-2);opacity:.5;height:2px;margin-top:-1px;position:absolute;top:50%;left:-2px;right:-2px}.controls .gauge-fill{--t:0;left:0;right:0;top:calc(50% - max(var(--t), 0) * 50%);height:calc(max(var(--t), calc(var(--t) * -1)) * 50%);background:var(--red);position:absolute}.controls .gauge.rev .gauge-fill{background:var(--ink)}.controls .touch-ghost{pointer-events:none;opacity:0;transition:opacity .18s;position:absolute;inset:0}.controls .touch-ghost.on{opacity:1;transition:none}.controls .touch-ghost i{border-radius:50%;position:absolute;top:0;left:0}.controls .touch-ghost .o{width:56px;height:56px;transform:translate(calc(var(--x0) - 28px), calc(var(--y0) - 28px));border:1.5px dashed #1f243059}.controls .touch-ghost .t{width:44px;height:44px;transform:translate(calc(var(--x) - 22px), calc(var(--y) - 22px));background:#fbf6ec8c;border:1.5px solid #1f243080;box-shadow:0 4px 14px -6px #3c2d1480}.controls .touch-ghost.drive .t{border-color:#b8323ab3}.card-wrap{background:radial-gradient(#efe8da26,#efe8da8c);place-items:center;padding:16px;animation:.35s fade;display:grid;position:fixed;inset:0;overflow-y:auto}@keyframes fade{0%{opacity:0}}.card{background:var(--paper);width:min(100%,400px);box-shadow:var(--shadow);text-align:center;border:1px solid #e2d8c5b3;border-radius:26px;padding:26px 24px 18px;animation:.5s cubic-bezier(.2,.8,.2,1) rise}@keyframes rise{0%{opacity:0;transform:translateY(16px)scale(.98)}}.kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin:0 0 6px;font-size:12px}.title{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 12px;font-size:56px;font-weight:600;line-height:.95}.title em{color:var(--red);font-style:italic}.lede{max-width:30ch;color:var(--ink-2);margin:0 auto 16px;font-size:15px;line-height:1.45}.facts{grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px;display:grid}.facts.three{grid-template-columns:1fr 1fr 1fr}.facts div{background:var(--paper-2);border-radius:14px;flex-direction:column;padding:10px 6px 8px;display:flex}.facts b{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:24px;font-weight:600}.facts span{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-top:2px;font-size:11px}.btn{border:0;border-radius:16px;width:100%;margin-top:8px;padding:15px 18px;font-size:16px;font-weight:600;transition:transform 80ms,background .2s;display:block}.btn:active{transform:scale(.98)}.btn.primary{background:var(--ink);color:var(--paper);margin-bottom:4px;box-shadow:0 5px #000}.btn.primary:active{transform:translateY(4px);box-shadow:0 1px #000}.btn.quiet{border:1px solid var(--line);color:var(--ink);background:0 0}.row{gap:8px;display:flex}.row .btn{flex:1}.fine{color:var(--ink-2);margin:14px 0 0;font-size:12.5px}.fine a{color:inherit}.stars{letter-spacing:6px;color:#e6a817;min-height:44px;margin:4px 0 2px;font-size:34px}.stars .off{color:#ddd3bf}.stars span{animation:.5s cubic-bezier(.3,1.6,.5,1) backwards pop;display:inline-block}@keyframes pop{0%{transform:scale(0)rotate(-40deg)}}.verdict{font-family:var(--hand);color:var(--ink);margin:2px 0 12px;font-size:28px;line-height:1.05}#res-track{aspect-ratio:640/300;background:var(--paper-2);border-radius:14px;width:100%;height:auto;margin-bottom:12px;display:block}.adbreak{color:#888;letter-spacing:.2em;text-transform:uppercase;z-index:20;background:#111;place-items:center;font-size:12px;display:grid;position:fixed;inset:0}.toast{left:50%;bottom:calc(26px + var(--safe-b));opacity:0;background:var(--ink);color:var(--paper);z-index:30;pointer-events:none;border-radius:12px;padding:10px 16px;font-size:14px;transition:all .25s;position:fixed;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}@media (max-width:560px){.brand .mark{font-size:18px}.chip{min-width:48px;padding:5px 7px 4px}.chip b{font-size:17px}.chips .chip.dim{display:none}.tool{width:36px;height:36px}.title{font-size:48px}.hud-top{gap:8px}}@media (max-height:520px){.card{padding:16px 20px 12px}.title{margin-bottom:6px;font-size:38px}.lede{margin-bottom:10px}.controls .wheel{width:76px;height:76px}.controls .gauge-track{height:54px}.controls .zone.steer .cue{bottom:calc(100px + var(--safe-b))}.controls .zone.drive .cue{bottom:calc(142px + var(--safe-b))}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (min-width:901px){#result{background:linear-gradient(90deg,#0000 40%,#efe8da80);justify-items:end;padding-right:max(5vw,32px)}}.btn small{color:var(--ink-2);margin-top:1px;font-size:11.5px;font-weight:500;display:block}body.run .chips,body.run .brand .label{display:none}body.run .say{top:calc(max(14px, env(safe-area-inset-top)) + var(--run-hud-h,100px) + 12px)}@media (min-width:700px){body.run .say{top:calc(max(14px, env(safe-area-inset-top)) + 64px)}}.bay-tag{z-index:12;background:var(--ink);width:30px;height:30px;color:var(--paper);font:600 15px/26px var(--sans);text-align:center;text-indent:0;letter-spacing:0;border:2px solid var(--paper);pointer-events:none;border-radius:50%;transition:background .2s,transform 50ms linear;position:fixed;top:0;left:0;box-shadow:0 4px 12px -4px #0006}.bay-tag.on{background:var(--red)}body.flipped canvas#c{transform:scaleX(-1)}.tool.tucked{display:none}.tool svg{width:16px;height:16px}body:not(.driving-now) .keys{opacity:0;transition:opacity .2s}body.paused .say{opacity:0}#pause,#logbook{z-index:60;background:#1f243047}.card.pause,.card.logbook{text-align:left}.card.pause .title,.card.logbook .title{margin:2px 0 8px;font-size:34px}.card.pause .btn kbd{color:inherit;background:0 0;border-color:#ffffff59;margin-left:6px}.pause-confirm{border:1px solid var(--line);background:var(--paper-2);border-radius:16px;margin-top:8px;padding:12px 12px 4px}.pause-confirm p{margin:0 0 4px;font-size:14px;line-height:1.35}.btn.danger{background:var(--red);color:#fff;box-shadow:0 4px 0 var(--red-ink)}.settings{border-top:1px solid var(--line);gap:2px;margin-top:14px;padding-top:8px;display:grid}.set{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:8px 2px;font-size:14.5px;display:flex}.set span{order:-1}.set input{appearance:none;background:var(--line);cursor:pointer;border-radius:99px;flex:none;width:42px;height:24px;margin:0;transition:background .15s;position:relative}.set input:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.set input:checked{background:var(--ink)}.set input:checked:after{transform:translate(18px)}.set input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.practice-pick{flex-direction:column;flex:1;display:flex}.practice-pick .btn{flex:none}.lvl{margin-top:4px;display:block}.lvl[hidden]{display:none}.lvl select{width:100%;font:500 12.5px var(--sans);color:var(--ink-2);text-align:center;text-align-last:center;cursor:pointer;background:0 0;border:0;padding:2px}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.best{color:var(--ink-2);margin:10px 0 0;font-size:13px}.best b{color:var(--ink)}.log-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin:4px 0 10px;display:grid}.log-grid div{background:var(--paper-2);text-align:center;border-radius:12px;padding:8px 6px}.log-grid b{font:600 20px var(--serif);display:block}.log-grid span{color:var(--ink-2);font-size:11.5px}.log-best{margin:0 0 8px;font-size:14px}.log-list{max-height:34vh;margin:0 0 6px;padding:0;font-size:13px;list-style:none;overflow-y:auto}.log-list li{border-top:1px solid var(--line);justify-content:space-between;gap:8px;padding:6px 0;display:flex}.log-list li span:last-child{color:var(--ink-2);text-align:right}.log-empty{color:var(--ink-2);font-size:14px}.boot{z-index:80;background:#efe8da;place-items:center;transition:opacity .4s;display:grid;position:fixed;inset:0}.boot.gone{opacity:0;pointer-events:none}.boot-card{text-align:center;max-width:360px;padding:24px}.boot-title{font:600 38px var(--serif);margin:0 0 6px}.boot-title em{color:var(--red)}.boot-msg{color:var(--ink-2);margin:0;font-size:15px;line-height:1.45}.boot:not(.failed) .boot-msg:after{content:"";text-align:left;width:1.2em;animation:1.2s steps(4,end) infinite boot-dots;display:inline-block}@keyframes boot-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}html.reduce-motion *,html.reduce-motion :before,html.reduce-motion :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html.cb{--red:#d55e00;--red-ink:#a04600;--green:#0072b2;--amber:#e69f00;--gold:#b07a00}html.cb .pp-pop.pp--k-good span{background:#0072b2;border-color:#005a8c}body:not(.touch) .controls{pointer-events:none;display:block}body:not(.touch) .controls .zone,body:not(.touch) .controls .autocentre,body:not(.touch) .controls .touch-ghost,body:not(.touch) .controls .gauge,.run-only{display:none}body.run .run-only{display:inline}body.paused .ts-coach{display:none}body.touch .ts-coach .coach-skip{top:calc(max(14px, env(safe-area-inset-top)) + 110px);bottom:auto;right:12px}body.pp-panel-open .bay-tag{visibility:hidden}.card.intro.campaign{width:min(100%,860px);padding:22px 24px 16px}.card.intro.campaign .title{margin-bottom:6px;font-size:50px}.card.intro.campaign .lede{max-width:52ch;margin-bottom:10px;font-size:14.5px}.map-head{color:var(--ink-2);letter-spacing:.02em;justify-content:space-between;align-items:baseline;margin:0 4px 6px;font-size:13px;display:flex}.map-head b{color:var(--ink);font-weight:600}.map-total{font-variant-numeric:tabular-nums;color:#b88a12}.map-total b{color:var(--ink)}.map{width:100%}.map-svg{width:100%;height:auto;display:block}.map-svg .grass{fill:#e4ead3;stroke:#d3dcbd}.map-svg .road{fill:none;stroke:#9aa0a8;stroke-width:22px;stroke-linecap:round}.map-svg .lane{fill:none;stroke:#f3efe4;stroke-width:2px;stroke-dasharray:8 9;stroke-linecap:round}.map-svg .road.shut{stroke:#c9c6bd}.map-svg .lane.shut{stroke:#ddd9ce}.map-svg .door{cursor:pointer;outline:none}.map-svg .door.locked{cursor:default}.map-svg .shadow{fill:#3c2d1421}.map-svg .ring{fill:none;stroke:var(--red);stroke-width:3px;animation:1.6s ease-in-out infinite ring}@keyframes ring{50%{opacity:.3}}.map-svg .wall{stroke:#1f24302e;stroke-width:1px}.map-svg .roof{fill:#8d5b4c}.map-svg .roof.flat{fill:#5d6b73}.map-svg .door.locked .roof{fill:#b3aa9a}.map-svg .win{fill:#4c6072;stroke:#fbf8f1;stroke-width:1.6px}.map-svg .door.locked .win{fill:#bdb6a8}.map-svg .doorway{fill:#243a5e;stroke:#fbf8f1;stroke-width:1.6px}.map-svg .door.next .doorway{fill:var(--red)}.map-svg .door.locked .doorway{fill:#bdb6a8}.map-svg .num{font:700 9px var(--sans);fill:#fbf8f1;text-anchor:middle;letter-spacing:.02em}.map-svg .sign{font:700 7px var(--sans);fill:#fbf8f1;text-anchor:middle;letter-spacing:.12em}.map-svg .name{font:600 11px var(--sans);fill:var(--ink);text-anchor:middle}.map-svg .door.locked .name{fill:#a39b8c}.map-svg .st{fill:#ddd3bf}.map-svg .st.on{fill:#e6a817}.map-svg .lock rect{fill:#7d7566}.map-svg .lock path{stroke:#7d7566;stroke-width:2.2px}.map-svg .door:not(.locked):hover .wall,.map-svg .door:focus-visible .wall{stroke:var(--ink);stroke-width:2px}.map-svg .door:not(.locked):hover,.map-svg .door:focus-visible{filter:drop-shadow(0 4px 6px #3c2d1440)}.map-svg.tall .num{font-size:11px}#btn-continue small{color:#fbf6ecb3}.row.secondary{margin-top:2px}.row.secondary .btn{padding:11px 10px;font-size:14px}.card-wrap.side{z-index:40}@media (min-width:901px){.card-wrap.side{background:linear-gradient(90deg,#0000 45%,#efe8da8c);justify-items:end;padding-right:max(4vw,28px)}}@media (max-width:900px){.card-wrap.side{padding-bottom:calc(12px + var(--safe-b));background:linear-gradient(#0000 35%,#efe8da99);align-items:end}.card-wrap.side .card{max-height:64vh;overflow-y:auto}}.card.levelcard,.card.cresult{text-align:left;width:min(100%,380px);padding:22px 22px 16px}.card.levelcard .title,.card.cresult .title{margin-bottom:6px;font-size:40px}.idea{font-family:var(--hand);color:var(--red-ink);margin:0 0 8px;font-size:25px;line-height:1.05}.lv-intro{color:var(--ink-2);margin:0 0 12px;font-size:14.5px;line-height:1.45}.lv-stars,.cr-stars{gap:6px;margin:0 0 12px;padding:0;list-style:none;display:grid}.lv-stars li,.cr-stars li{background:var(--paper-2);border-radius:12px;align-items:center;gap:10px;padding:8px 12px;font-size:14.5px;display:flex}.lv-star,.cr-star{color:#ddd3bf;font-size:20px;line-height:1}.lv-stars li.got .lv-star,.cr-stars li.got .cr-star{color:#e6a817}.cr-stars li{animation:.45s cubic-bezier(.3,1.6,.5,1) backwards stamp}.cr-stars li:not(.got){color:var(--ink-2)}.cr-stars li.new{box-shadow:inset 0 0 0 2px #e6a817}@keyframes stamp{0%{opacity:0;transform:scale(1.35)rotate(-4deg)}}.lv-meta{color:var(--ink-2);flex-wrap:wrap;gap:6px 12px;margin:0 0 6px;font-size:12.5px;display:flex}.lv-meta b{color:var(--ink)}.lv-meta .rule{color:var(--red-ink);width:100%;font-weight:600}.card.cresult .verdict{margin-bottom:10px}.card.cresult .facts span i{font-style:normal}.btn kbd{color:inherit;opacity:.55;background:0 0;border-color:currentColor;margin-left:6px;font-size:11px}.chip.moves small{color:var(--ink-2);letter-spacing:.04em;margin-top:1px;font-size:10px}.chip.moves small:empty,.campaign-only{display:none}body.campaign .campaign-only{display:inline}body.campaign .tools .campaign-only,body.campaign #btn-restart.tucked{display:grid}body.campaign #btn-hint{display:none}#btn-guides[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}#btn-guides:disabled{opacity:.3;cursor:default}.wedge{z-index:5;left:50%;bottom:calc(70px + var(--safe-b));opacity:0;pointer-events:none;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center;border-radius:16px;width:min(88vw,360px);padding:12px 14px;transition:all .25s;position:absolute;transform:translate(-50%,12px)}.wedge.show{opacity:1;pointer-events:auto;transform:translate(-50%)}.wedge p{color:var(--ink-2);margin:0 0 4px;font-size:14px}.wedge .btn{margin-top:4px;padding:11px;font-size:15px}body.touch .wedge{bottom:auto;top:calc(max(14px, env(safe-area-inset-top)) + 130px)}@media (max-width:640px){.card.intro.campaign{padding:16px 14px 12px}.card.intro.campaign .title{font-size:40px}.card.intro.campaign .lede{font-size:13.5px}.row.secondary{flex-wrap:wrap}.row.secondary .btn{padding:10px 6px;font-size:13px}.map-svg.tall{max-height:46vh}}@media (max-height:760px) and (min-width:641px){.card.intro.campaign .lede{display:none}.card.intro.campaign .title{font-size:40px}}.map-head{align-items:center;gap:8px}.map-head #map-title{margin-right:auto}.map-arrow{border:1px solid var(--line);background:var(--paper);width:30px;height:30px;color:var(--ink);border-radius:10px;place-items:center;font-size:18px;line-height:1;display:grid}.map-arrow:disabled{opacity:.3;cursor:default}.map-svg.shut .door,.map-svg.shut .road,.map-svg.shut .lane{opacity:.55}.map-svg .gate rect{fill:var(--paper);stroke:var(--line)}.map-svg .gate .g1{font:600 15px var(--sans);fill:var(--ink);text-anchor:middle}.map-svg .gate .g2{font:500 13px var(--sans);fill:var(--ink-2);text-anchor:middle}.street-info{top:calc(max(14px, env(safe-area-inset-top)) + 58px);pointer-events:none;gap:6px;display:flex;position:absolute;right:16px}.street-info:empty{display:none}.sinfo{color:var(--ink-2);background:#fbf6ece6;border:1px solid #e2d8c5e6;border-radius:12px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:flex}.sinfo b{color:var(--ink);font-variant-numeric:tabular-nums}.sinfo .lamp{background:#c9283a;border-radius:50%;width:12px;height:12px;box-shadow:0 0 6px #c9283a}.sinfo .lamp.green{background:#3cb56a;box-shadow:0 0 6px #3cb56a}.sinfo.warn{border-color:var(--red);color:var(--red-ink)}#btn-hazards[aria-pressed=true]{color:var(--ink);background:#f2a33a;border-color:#d8891f;animation:1s steps(2,end) infinite hz}#btn-hazards:disabled{opacity:.3}#btn-handbrake[aria-pressed=true]{background:var(--ink);color:var(--paper)}@keyframes hz{50%{background:#fbf6ecdb}}body.touch .street-info{top:calc(max(14px, env(safe-area-inset-top)) + 112px);left:16px;right:auto}.tool[hidden]{display:none!important}body.campaign .brand{-webkit-backdrop-filter:blur(8px);background:#fbf6ece6;border:1px solid #e2d8c5e6;border-radius:12px;flex:0 auto;margin-right:auto;padding:6px 12px}body.campaign .brand .label{color:var(--ink);opacity:1;font-size:12.5px;font-weight:600}
