:root{--color-bg:#000;--color-fg:#fff;--color-fg-muted:#a0a0a0;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--font-mono:"Ocelot Monowidth", ui-monospace, Menlo, monospace;--font-size-body:1rem;--font-size-heading:1.25rem;--font-size-display:1.75rem;--font-weight-body:400;--font-weight-heading:700}@font-face{font-family:Ocelot Monowidth;src:url(/fonts/Ocelot-Monowidth.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{overscroll-behavior:none;touch-action:manipulation;background-color:var(--color-bg);min-height:100dvh;color:var(--color-fg);font-family:var(--font-mono);font-size:var(--font-size-body);font-weight:var(--font-weight-body);-webkit-text-size-adjust:100%;line-height:1.5;overflow:hidden}body{min-height:100dvh;overflow:hidden}#root{min-height:100dvh}.reception-page{overscroll-behavior:none;min-height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-inline:max(var(--space-lg), env(safe-area-inset-left), env(safe-area-inset-right));grid-template-rows:1fr auto 1fr;display:grid;overflow:hidden}.reception-stage{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;grid-row:2;justify-content:center;align-items:center;width:100%;height:56dvh;display:flex;position:relative}.reception-stage canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block}.reception-coordinates{padding-top:var(--space-lg);min-height:var(--space-2xl);justify-content:center;align-self:start;gap:var(--space-sm) var(--space-md);font-size:var(--font-size-body);font-weight:var(--font-weight-body);color:var(--color-fg);text-align:center;-webkit-user-select:text;user-select:text;opacity:0;flex-wrap:wrap;grid-row:3;transition:opacity .4s ease-out;display:flex}.reception-coordinates.is-visible{opacity:1}.reception-coordinates .coord{white-space:nowrap}@media (prefers-reduced-motion:reduce){.reception-coordinates{transition:opacity .3s ease-out}}.reception-status{text-align:center;flex-direction:column;grid-row:2;place-self:center;align-items:center;max-width:32ch;display:flex}.reception-status__heading{font-size:var(--font-size-heading);font-weight:var(--font-weight-heading);color:var(--color-fg);text-wrap:balance;line-height:1.2}.reception-status__body{margin-top:var(--space-md);font-size:var(--font-size-body);font-weight:var(--font-weight-body);color:var(--color-fg);text-wrap:balance;line-height:1.5}.reception-status--error .reception-status__body{color:var(--color-fg-muted)}.reception-desktop{text-align:center;place-self:center;align-items:center;gap:var(--space-md);flex-direction:column;grid-row:2;max-width:32ch;display:flex}.reception-desktop__heading{font-size:var(--font-size-display);font-weight:var(--font-weight-heading);color:var(--color-fg);text-wrap:balance;line-height:1.2}.reception-desktop__body{font-size:var(--font-size-body);font-weight:var(--font-weight-body);color:var(--color-fg);text-wrap:balance;line-height:1.5}.try-again-btn{margin-top:var(--space-xl);min-width:48px;min-height:48px;padding-block:0;padding-inline:var(--space-lg);border:1px solid var(--color-fg);color:var(--color-fg);font-family:var(--font-mono);font-size:var(--font-size-body);font-weight:var(--font-weight-body);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:9999px;line-height:1.5}.try-again-btn:focus-visible{outline:2px solid var(--color-fg);outline-offset:var(--space-xs)}.try-again-btn:active{background:var(--color-fg);color:var(--color-bg)}.reception-stage canvas{transition:opacity 1.2s cubic-bezier(.22,1,.36,1)}.reception-stage canvas.canvas-hidden{opacity:0}@media (prefers-reduced-motion:reduce){.reception-stage canvas{transition:opacity .3s ease-out}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
