:root{color-scheme:dark;--bg:#0c1918;--panel:#142523;--text:#e7eee8;--muted:#95aaa4;--accent:#c2f179;--border:#2d4039;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}[hidden]{display:none!important}button,input{font:inherit}button{cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text);border-radius:6px;padding:10px 15px}button:hover{border-color:var(--accent)}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button:disabled{opacity:.5;cursor:wait}header{max-width:1480px;margin:auto;display:flex;gap:24px;align-items:center;padding:25px 5%;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:12px;font-size:17px;letter-spacing:2px;color:var(--text);text-decoration:none}.brand img{width:35px;height:35px}.brand b{color:var(--accent);font-weight:400}.place{margin-left:auto;font-size:10px;letter-spacing:2px;color:var(--muted)}main{max-width:1300px;margin:auto;padding:42px 5% 20px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;color:var(--accent);margin:0 0 14px}h1{font-size:clamp(27px,3.5vw,43px);font-weight:400;letter-spacing:-1.6px;margin:0 0 27px}h2{font-weight:400;font-size:25px;letter-spacing:-.5px;margin:0 0 12px}.heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.heading>.badge{margin-top:-10px}.badge{display:inline-flex;align-items:center;gap:7px;background:#23372d;color:var(--accent);padding:8px 11px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:1px;white-space:nowrap}.viewer{position:relative;aspect-ratio:16/9;background:#070f0e;border-radius:9px;border:1px solid var(--border);overflow:hidden}.viewer canvas{width:100%;height:100%;object-fit:contain}.empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(ellipse at center,#1f3930 0%,#0c1918 68%);padding:25px}.signal{font-size:48px;color:var(--accent);margin-bottom:18px}.empty p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.video-top,.video-bottom{position:absolute;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.video-top{top:18px}.video-bottom{bottom:14px}.video-bottom button{pointer-events:auto;background:#0c1918cc;font-size:25px;padding:3px 12px}.video-bottom>span,#fps{font-size:9px;font-weight:700;letter-spacing:1.5px;background:#0c1918bb;padding:7px;border-radius:3px}.live{background:#101d17dd}.live i{width:5px;height:5px;border-radius:100%;background:currentColor}.controls{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;padding:35px 0}.walk>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.5}.primary{background:var(--accent);border-color:var(--accent);color:#182611;font-weight:600;min-height:50px;display:flex;justify-content:space-between;align-items:center;gap:45px}.walk .primary{width:100%;max-width:360px;margin:22px 0 14px}.primary span{font-size:22px;font-weight:400}.walk .privacy{font-size:11px!important;max-width:340px;line-height:1.6!important}.telemetry{padding-top:4px}.stat{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding:15px 0}.stat span{font-size:9px;letter-spacing:1.3px;color:var(--muted)}.stat strong{font-size:12px;font-weight:400;text-align:right}.camera{display:flex;justify-content:space-between;align-items:center;margin-top:19px;font-size:12px}.camera input{accent-color:var(--accent);vertical-align:middle}.camera button{font-size:22px;padding:2px 14px;margin-left:5px}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:20px}footer span{font-size:9px;letter-spacing:1px;color:var(--muted)}footer button{border:0;font-size:11px;color:var(--muted)}.login{max-width:560px;margin:9vh auto}.login h1{font-size:70px;line-height:1.05}.login>p:not(.eyebrow){color:var(--muted);line-height:1.7;font-size:16px;max-width:420px}.login form{margin-top:34px}.login label{display:block;font-size:12px;color:var(--muted);margin-bottom:10px}.inputrow{display:flex;gap:8px}.inputrow input{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:10px;color:var(--text);min-width:0;flex:1}#loginError{color:#ffb69f}.viewer:fullscreen{border:0;border-radius:0;background:#000;aspect-ratio:auto}.viewer:fullscreen canvas{object-fit:contain;width:100%;height:100%}@media(max-width:650px){header{padding:19px 5%}.place{display:none}#install{margin-left:auto;font-size:11px}main{padding-top:30px}.heading{align-items:flex-start}.heading h1{max-width:240px}.heading>.badge{margin-top:1px;font-size:8px}.controls{grid-template-columns:1fr;gap:17px;padding-top:28px}.walk .primary{max-width:none}.walk .privacy{max-width:none}.viewer{margin:0 -5.56%;border-radius:0;border-left:0;border-right:0;aspect-ratio:16/10}.video-top{top:10px;left:12px;right:12px}.video-bottom{bottom:8px;left:12px;right:12px}.empty h2{font-size:21px}.empty p{font-size:11px}.signal{font-size:30px;margin-bottom:8px}.login h1{font-size:58px}.inputrow{flex-direction:column}.inputrow input{min-height:48px}.telemetry{padding-bottom:8px}.eyebrow{font-size:8px}.privacy{font-size:10px}.heading h1{font-size:28px}.brand{font-size:14px}.brand img{width:28px}}
.github-login{padding:14px 18px;border-radius:6px;margin-top:30px;text-decoration:none;max-width:380px}.login .login-note{font-size:12px;max-width:360px;color:var(--muted)}
