html,body,#root{overscroll-behavior:none;background:#05060f;height:100%;margin:0}body{touch-action:none}.app{width:100%;height:100%;position:relative}:root{--ui-bg:#141c34b8;--ui-bg-pressed:#304070e6;--ui-fg:#f4f6ff;--ui-ring:#ffffff8c;--ui-chosen:#ffd76a;--ui-gutter:max(16px, env(safe-area-inset-left))}.big-button{border:3px solid var(--ui-ring);background:var(--ui-bg);width:80px;min-width:64px;height:80px;min-height:64px;color:var(--ui-fg);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:50%;place-items:center;padding:0;transition:transform 80ms ease-out,background-color 80ms ease-out;display:grid}.big-button:active{background:var(--ui-bg-pressed);transform:scale(.94)}.big-button.is-on{border-color:var(--ui-chosen);background:var(--ui-bg-pressed);position:relative}.big-button.is-on:after{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;bottom:7px;left:50%}.big-button:focus-visible{outline:4px solid var(--ui-chosen);outline-offset:3px}@media (prefers-reduced-motion:reduce){.big-button{transition:none}.big-button:active{transform:none}}.bottom-stack{left:0;right:0;bottom:max(16px, env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;gap:12px;display:flex;position:absolute}.control-bar{padding:0 var(--ui-gutter);pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.control-bar>*{pointer-events:auto}@media (width<=560px){.control-bar{flex-wrap:wrap}.control-bar .time-dial{order:-1;margin:0 auto}.control-bar:before{content:"";flex-basis:100%;order:-1;height:0}}.time-dial{border:3px solid var(--ui-ring);background:var(--ui-bg);border-radius:999px;gap:4px;padding:5px;display:flex}.time-dial__option{width:68px;min-width:64px;height:68px;min-height:64px;color:var(--ui-fg);opacity:.7;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:3px solid #0000;border-radius:50%;place-items:center;padding:0;transition:transform 80ms ease-out,background-color 80ms ease-out;display:grid;position:relative}.time-dial__option.is-chosen{border-color:var(--ui-chosen);background:var(--ui-bg-pressed);opacity:1}.time-dial__option.is-chosen:after{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;bottom:5px;left:50%}.time-dial__option.is-chosen.is-paused{border-style:dashed}.time-dial__option:active{transform:scale(.94)}.time-dial__option:focus-visible{outline:4px solid var(--ui-chosen);outline-offset:2px}@media (prefers-reduced-motion:reduce){.time-dial__option{transition:none}.time-dial__option:active{transform:none}}.perf-overlay{top:max(8px, env(safe-area-inset-top));left:calc(var(--ui-gutter) + 76px);color:#b8f5c8;pointer-events:none;-webkit-user-select:none;user-select:none;background:#0009;border-radius:6px;padding:6px 10px;font:12px/1.4 ui-monospace,Menlo,Consolas,monospace;position:absolute}.perf-overlay .over{color:#ffb4a8;font-weight:700}.date-panel{top:calc(max(8px, env(safe-area-inset-top)) + 88px);left:calc(var(--ui-gutter) + 76px);box-sizing:border-box;max-width:calc(100% - 2 * var(--ui-gutter) - 172px);color:var(--ui-fg);background:#000000a6;border-radius:8px;padding:8px 12px;font:13px/1.5 system-ui,sans-serif;position:absolute}.date-panel__now{font-weight:600}.date-panel__utc,.date-panel__state{opacity:.75}.date-panel__row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.date-panel input,.date-panel button{font:inherit;min-height:32px}.view-switches{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));flex-direction:column;gap:12px;display:flex;position:absolute}.marker-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.edge-marker{border:3px solid var(--ui-chosen);background:var(--ui-bg);width:64px;height:64px;color:var(--ui-chosen);cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;padding:0;position:absolute;top:0;left:0}.edge-marker__planet{background-position:50%;background-size:200% 100%;border-radius:50%;position:absolute;inset:14px}.edge-marker__arrow{justify-content:flex-end;align-items:center;padding-right:1px;display:flex;position:absolute;inset:0}.edge-marker:focus-visible{outline:4px solid var(--ui-chosen);outline-offset:2px}.tiny-ring{box-sizing:border-box;border:2px solid var(--ui-chosen);opacity:.8;border-radius:50%;width:40px;height:40px;position:absolute;top:0;left:0}.magnifier-badge{top:max(16px, env(safe-area-inset-top));left:var(--ui-gutter);background:var(--ui-chosen);color:#2a2205;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:3px solid #fff3c4;border-radius:50%;place-items:center;width:64px;height:64px;padding:0;transition:opacity .4s,visibility;display:grid;position:absolute}.magnifier-badge.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s,visibility 0s .4s}.magnifier-badge.is-pulsing{animation:.6s ease-out badge-pulse}@keyframes badge-pulse{0%,to{transform:scale(1)}40%{transform:scale(1.12)}}.magnifier-badge:focus-visible{outline-offset:3px;outline:4px solid #fff3c4}@media (prefers-reduced-motion:reduce){.magnifier-badge,.magnifier-badge.is-hidden{transition:none}.magnifier-badge.is-pulsing{animation:none}}.guide-bar{width:min(720px, calc(100% - 2 * var(--ui-gutter)));pointer-events:none;align-self:center;align-items:flex-end;gap:10px;display:flex}.captions-bar{pointer-events:none;flex:1;align-items:flex-end;min-width:0;min-height:calc(4.05em + 16px);font:20px/1.35 system-ui,sans-serif;display:flex}.captions-bar__text{color:#fff;background:#000000b8;border-radius:14px;margin:0 0 14px;padding:8px 16px;transition:opacity .2s;position:relative}.captions-bar__text:before{content:"";border:8px solid #0000;border-left-width:0;border-right:10px solid #000000b8;position:absolute;bottom:12px;left:-10px}.captions-bar__text.is-empty{opacity:0}@media (prefers-reduced-motion:reduce){.captions-bar__text{transition:none}}.robot{cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:none;align-self:flex-end;width:72px;min-width:64px;height:84px;min-height:64px;padding:0}.robot:focus-visible{outline:4px solid var(--ui-chosen);outline-offset:2px;border-radius:16px}.robot__float{animation:4s ease-in-out infinite robot-float}.robot__eyes{transform-box:fill-box;transform-origin:50%;animation:5s infinite robot-blink}.robot__light{fill:var(--ui-chosen);opacity:.5}.robot__bar{transform-box:fill-box;transform-origin:50%}.robot.is-talking .robot__light{opacity:1;animation:1.2s ease-in-out infinite alternate robot-glow}.robot.is-talking .robot__bar{animation:.36s ease-in-out infinite robot-talk}.robot.is-talking .robot__bar--2{animation-delay:.12s}.robot.is-talking .robot__bar--3{animation-delay:.24s}@keyframes robot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes robot-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes robot-glow{0%{opacity:.6}to{opacity:1}}@keyframes robot-talk{0%,to{transform:scaleY(1)}50%{transform:scaleY(2.6)}}@media (prefers-reduced-motion:reduce){.robot__float,.robot__eyes,.robot.is-talking .robot__light,.robot.is-talking .robot__bar{animation:none}.robot.is-talking .robot__bar{transform:scaleY(2)}}
