@font-face{font-family:Geist;src:url(/_font/Geist%5Bwght%5D.woff2) format("woff2");font-weight:var(--wght-regular) var(--wght-bold);font-feature-settings:"ss05" 1,"ss08" 1,"ss09" 1;font-style:normal;font-display:swap}@font-face{font-family:GeistMono;src:url(/_font/GeistMono%5Bwght%5D.woff2) format("woff2");font-weight:var(--wght-regular);font-feature-settings:"ss05" 1,"ss08" 1,"ss09" 1;font-style:normal;font-display:swap}:root{--font-sans: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "GeistMono", ui-monospace, SFMono-Regular, Menlo, Monaco, "Segoe UI Mono", monospace;--wght-regular: 300;--wght-bold: 600;--color-text-default: oklch(1 0 0 / 1);--color-text-placeholder: oklch(.6 0 0 / 1);--color-text-inverse: oklch(0 0 0 / 1);--color-bg-default: transparent;--color-bg-inverse: oklch(1 0 0 / 1);--color-bg-page: oklch(0 0 0 / 1);--color-btn-default: oklch(1 0 0 / 1);--color-btn-inactive: oklch(1 0 0 / .5);--color-btn-active: oklch(.6 .2 144);--color-btn-error: oklch(.5 .18 30);--color-btn-caution: oklch(68.622% .13599 96.325);--opacity-inactive: .3;--msg-curve: cubic-bezier(.5,0,.5,1);--btn-curve: ease-in-out;--msg-timing: .5s;--btn-timing: .25s;--notification-timing: 2s}:root{--font-sm: .75rem;--font-md: 1rem;--font-lg: 7.5vw;--font-xl: 16vw;--space-lay-sm: 1vw;--space-lay-md: 2vw;--space-lay-lg: 3vw;--space-type-xs: .5rem;--space-type-sm: 1rem;--space-type-md: 1.5rem;--space-type-lg: 2.5rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 2rem;--size-tag-sm: 2rem;--size-btn-icon: 1.5rem;--size-border-radius-pill: 0rem;--size-border-width: 1.2px}@media screen and (min-width: 769px) and (min-device-width: 769px){:root{--font-lg: 3vw}}body{background:var(--color-bg-page);margin:0;font-family:var(--font-mono);font-size:var(--font-md);letter-spacing:.02em;height:100dvh;width:100vw;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;padding-top:0;box-sizing:border-box}#controls{position:fixed;top:calc(2 * var(--space-lay-md));right:calc(2 * var(--space-lay-md));z-index:9999;display:flex;align-items:center;gap:var(--space-lay-sm);pointer-events:none}#controls>*{pointer-events:auto}#connection-status{width:var(--font-sm);height:var(--font-sm);border-radius:50%;background-color:var(--color-btn-inactive);position:relative;z-index:10000}#connection-status.hidden{display:none}#connection-status.connected{background-color:var(--color-btn-active);animation:blink-hard 1s step-end infinite}#connection-status.disconnected{background-color:var(--color-btn-inactive);animation:none}@keyframes blink-hard{0%,49%{opacity:1}50%,to{opacity:0}}#audio-control{font-size:var(--font-sm);font-family:var(--font-sans);border:none;cursor:pointer;height:var(--size-tag-sm);padding:0 var(--space-type-sm);border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-type-xs);outline:none;overflow:hidden;transition:all var(--btn-timing) var(--btn-curve),width var(--btn-timing) var(--btn-curve);opacity:0}#audio-control span{display:inline-block;white-space:nowrap}#audio-control:before{content:"";display:inline-block;color:inherit;pointer-events:none}#audio-control.initial,#audio-control.muted{color:var(--color-text-inverse);background:var(--color-btn-default);opacity:1}#audio-control.initial:before,#audio-control.muted:before{content:"↦"}#audio-control.unmuted{color:var(--color-text-default);background:var(--color-btn-inactive);opacity:1}#audio-control.unmuted:before{content:"×"}#audio-control[class*=notification-]{border-radius:calc(4 * var(--size-tag-sm))!important;pointer-events:none;opacity:1;animation:notification-fade-in .3s ease-in}#audio-control.notification-offline{color:var(--color-text-default);background:var(--color-btn-inactive)}#audio-control.notification-offline:before{display:none}#audio-control.notification-connecting{color:var(--color-text-default);background:var(--color-btn-caution)}#audio-control.notification-connecting:before{display:none}#audio-control.notification-online{color:var(--color-text-default);background:var(--color-btn-active)}#audio-control.notification-online:before{display:none}#audio-control.notification-disconnected{color:var(--color-text-default);background:var(--color-btn-error)}#audio-control.notification-disconnected:before{display:none}@keyframes notification-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
