@font-face{font-family:Berkeley Mono;src:url(./BerkeleyMono-Regular-lsQ6X9kR.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Berkeley Mono;src:url(./BerkeleyMono-Bold-Cs0Oq-Gn.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}:root{color-scheme:dark;font-family:Berkeley Mono,monospace;color:#f4f4ef;background:#000;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{max-width:1440px;margin:0 auto;padding:24px 36px 32px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{min-height:44px;padding:0 12px;cursor:pointer;border:1px solid #555;border-radius:0;color:#fff;background:#111}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #fff;outline-offset:4px}button:hover{background:#333}button:active{color:#000;background:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.feed-title{position:absolute;top:4%;left:3%;max-width:calc(94% - 132px);margin:0;color:#f4f4ef;font-size:clamp(10px,1.55vw,22px);line-height:1.2;font-weight:400;text-transform:uppercase;text-shadow:1px 1px 2px #000}.recording{position:absolute;top:calc(4% + 36px);left:3%;font-size:clamp(9px,1.1vw,16px);line-height:1.2;text-shadow:1px 1px 2px #000}.screen:not(.has-signal) .recording{display:none}.television{display:grid;gap:16px;background:#000}.screen{position:relative;min-width:0;aspect-ratio:16 / 9;overflow:hidden;background:#000}#footage,#camera-frame,.standby,#static{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}#footage,#camera-frame{object-fit:cover;filter:saturate(.55) contrast(1.08) brightness(.88)}#camera-frame{image-rendering:pixelated}.standby{display:grid;place-items:center}.test-pattern{display:block;width:100%;height:100%}#signal{position:absolute;left:14%;right:14%;top:50%;transform:translateY(-50%);text-align:center;text-transform:uppercase;font-size:clamp(12px,2.4vw,32px);line-height:1;letter-spacing:.08em;font-weight:900}#static{z-index:2;image-rendering:pixelated}.receiver-controls{position:absolute;top:3%;right:2%;z-index:3;display:flex;align-items:center;gap:2px}.receiver-controls button{display:grid;place-items:center;width:40px;min-height:40px;padding:8px;border:0;color:#f4f4ef;background:#0007}.receiver-controls button:hover,.receiver-controls button:focus-visible{background:#444}.receiver-controls svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.receiver-controls .single-icon,.grid-view .grid-icon{display:none}.grid-view .receiver-controls .single-icon{display:block}.screen.grid-view{aspect-ratio:auto}.grid-view>#footage,.grid-view>#camera-frame,.grid-view>#standby,.grid-view>#camera-overlay,.grid-view>.recording{display:none}.grid-view>.interference{display:none}.grid-view .feed-title{top:20px;max-width:calc(94% - 50px);font-size:clamp(12px,1.55vw,22px)}.grid-view .receiver-controls{top:10px}.camera-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:64px 0 0}.camera-tile{position:relative;min-width:0;min-height:0;aspect-ratio:16 / 9;padding:0;overflow:hidden;border:1px solid #333;background:#080808;text-align:left}.camera-tile[aria-current=true]{border-color:#f4f4ef}.camera-tile:hover{border-color:#999;background:#141414}.camera-tile:focus-visible{outline-offset:-4px}.camera-tile img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:saturate(.55) contrast(1.08) brightness(.88)}.tile-signal{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:clamp(10px,1.2vw,18px)}.tile-label{position:absolute;bottom:7%;left:5%;right:5%;font-size:clamp(8px,1vw,14px);font-variant-numeric:tabular-nums;text-shadow:1px 1px 2px #000}#camera-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:4% 3%;display:flex;align-items:flex-end;justify-content:space-between;gap:8px;color:#f4f4ef;font-size:clamp(9px,1.4vw,20px);font-variant-numeric:tabular-nums;text-shadow:1px 1px 2px #000}.camera-label{max-width:65%}#camera-clock{white-space:pre;text-align:right;line-height:1.3}.interference{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.grain{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;opacity:var(--grain-opacity, .12);image-rendering:pixelated;animation:grain var(--grain-duration, .24s) steps(1) var(--grain-delay, 0s) infinite}.scanlines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(transparent 0 2px,#0003 2px,#0003 3px);opacity:.5}.tracking-band{position:absolute;inset:-20% 0 auto;height:14%;opacity:var(--tracking-opacity, 1);background:linear-gradient(transparent,#ffffff0a 48%,#0002 50%,transparent);animation:tracking var(--tracking-duration, 9s) linear var(--tracking-delay, 0s) infinite var(--tracking-direction, normal)}.screen.retuning #static{animation:grain .12s steps(1) infinite}.screen.paused *,.screen.paused.retuning #static,.camera-tile.paused *{animation-play-state:paused}@keyframes grain{0%,to{transform:translate(0)}25%{transform:translate(var(--grain-x1, 2%),var(--grain-y1, -3%))}50%{transform:translate(var(--grain-x2, -2%),var(--grain-y2, 2%))}75%{transform:translate(var(--grain-x3, 1%),var(--grain-y3, 3%))}}@keyframes tracking{0%{transform:translateY(0)}to{transform:translateY(900%)}}@media(prefers-reduced-motion:reduce){.grain,.tracking-band,.screen.retuning #static{animation:none}.tracking-band{display:none}}@media(max-width:760px){body{padding:16px}.television{margin-inline:-16px}.receiver-controls{font-size:12px}.camera-grid{grid-template-columns:minmax(0,1fr)}.tile-label{font-size:10px}}@media(max-width:760px),(max-height:600px)and (pointer:coarse){body.camera-open{overflow:hidden}.camera-open .screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;width:100dvw;height:100dvh;aspect-ratio:auto}.camera-open .feed-title{font-size:14px}.camera-open #camera-overlay{font-size:12px}.camera-open .recording{font-size:11px}.camera-open .receiver-controls button{width:44px;min-height:44px}}@media(max-width:760px)and (orientation:portrait){.camera-open .screen{inset:50% auto auto 50%;width:100dvh;height:100dvw;transform:translate(-50%,-50%) rotate(90deg)}}
