:root{--bg:#0a0c10;--panel:#12161d;--panel-2:#171c25;--text:#eef2f7;--muted:#8b97a8;--line:#27303d;--amber:#ffb020;--amber-dim:#8a5e13;--green:#4ade80;--red:#f87171;--blue:#7dd3fc;--radius:16px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{background:radial-gradient(1200px 700px at 20% -10%, #1a2029 0%, var(--bg) 55%) no-repeat;min-height:100%;color:var(--text);margin:0}body{justify-content:center;min-height:100vh;padding:32px 20px 48px;display:flex}#app{flex-direction:column;width:100%;max-width:640px;min-height:calc(100vh - 80px);display:flex}.top{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:36px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:12px;font-size:22px;font-weight:700;display:flex}.beam-mark{background:linear-gradient(90deg, transparent 0 28%, var(--amber) 28% 40%, transparent 40% 56%, var(--amber) 56% 68%, transparent 68% 84%, var(--amber) 84% 96%, transparent 96%), #161b23;width:26px;height:26px;box-shadow:inset 0 0 0 1px var(--line);border-radius:8px}.tv-name{color:var(--muted);text-align:right;font-size:14px}main{flex:1}.panel{background:linear-gradient(180deg, var(--panel-2), var(--panel));border:1px solid var(--line);border-radius:var(--radius);padding:28px}.lede{color:#c7d0dd;max-width:52ch;margin:0 0 28px;font-size:17px;line-height:1.55}label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:600;display:block}input[type=text]{border:1px solid var(--line);width:100%;color:var(--text);background:#0b0f15;border-radius:12px;outline:none;padding:14px 16px;font-size:18px;transition:border-color .12s,box-shadow .12s}input[type=text]:focus{border-color:var(--amber-dim);box-shadow:0 0 0 4px #ffb0201f}input.pin{letter-spacing:.4em;text-align:center;padding:18px 10px 18px 24px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:40px}.target-row{margin-bottom:24px}.target-input{gap:10px;display:flex}.target-input input{flex:1}#pin-row{margin-bottom:24px}.hint{color:var(--muted);margin:10px 0 0;font-size:13px;line-height:1.5}.actions{gap:12px;margin-top:8px;display:flex}button{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;transition:transform 80ms,background .12s,border-color .12s}button:active{transform:translateY(1px)}button.primary{background:var(--amber);color:#1a1203;padding:14px 22px;font-size:16px;font-weight:700}button.primary:hover{background:#ffc04d}button.primary.big{width:100%;padding:18px 22px;font-size:18px}button.secondary{border-color:var(--line);color:var(--text);background:#1a2029;padding:0 18px;font-size:15px;font-weight:600}button.secondary:hover{background:#222a36}button.danger{color:#ffb4b4;background:#2a1416;border-color:#58262b;width:100%;padding:14px 22px;font-size:16px;font-weight:700}button.danger:hover{background:#36191c}button:disabled{opacity:.45;cursor:not-allowed}.button-link{border:1px solid var(--line);color:var(--text);background:#1a2029;border-radius:12px;justify-content:center;align-items:center;padding:14px 22px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.button-link:hover{background:#222a36}.status-line{color:#c7d0dd;align-items:center;gap:10px;margin:0 0 24px;font-size:17px;display:flex}.status-line strong{color:var(--text)}.dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}.dot.ok{background:var(--green);box-shadow:0 0 0 4px #4ade801f}.dot.live{background:var(--red);animation:1.6s ease-in-out infinite pulse;box-shadow:0 0 0 4px #f8717124}@keyframes pulse{50%{opacity:.45}}.quality{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px;display:grid}.quality button{border-color:var(--line);color:var(--muted);text-align:left;background:#0b0f15;padding:16px}.quality button span{color:var(--text);margin-bottom:4px;font-size:16px;font-weight:650;display:block}.quality button small{font-size:12px}.quality button[aria-pressed=true]{border-color:var(--amber-dim);box-shadow:inset 0 0 0 1px var(--amber-dim);background:#1b1609}.quality button[aria-pressed=true] span{color:var(--amber)}.stats{grid-template-columns:1fr 1fr;gap:12px;margin:0 0 22px;display:grid}.stats div{border:1px solid var(--line);background:#0b0f15;border-radius:12px;padding:14px 16px}.stats dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;font-size:12px}.stats dd{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:18px}.error,.notice{border-radius:12px;margin-top:18px;padding:14px 16px;font-size:14px;line-height:1.5}.error{color:#ffc2c2;background:#2a1416;border:1px solid #58262b}.notice{color:#b7e2fb;background:#101a22;border:1px solid #244152}.notice button,.error button{border-color:var(--line);color:var(--text);background:#1a2029;margin-top:10px;margin-right:8px;padding:9px 14px;font-size:13px;font-weight:600}h2{margin:0 0 10px;font-size:20px}footer{color:var(--muted);justify-content:space-between;gap:12px;padding-top:28px;font-size:12px;display:flex}.probe-page{max-width:760px}.probe-table{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:100%;overflow:hidden}.probe-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:12px 16px;font-size:14px}.probe-table tr:last-child td{border-bottom:0}.probe-table td:first-child{color:var(--muted);width:42%}.probe-table td:last-child{word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.probe-json{border:1px solid var(--line);background:#0b0f15;border-radius:12px;max-height:360px;padding:16px;font-size:12px;line-height:1.55;overflow:auto}.probe-page .secondary{margin-top:14px;padding:12px 18px}@media (max-width:520px){body{padding:20px 14px 32px}.panel{padding:22px 18px}input.pin{font-size:32px}.stats,.quality{grid-template-columns:1fr}.target-input{flex-direction:column}.target-input button{padding:12px 18px}}.capture-video{opacity:.001;pointer-events:none;width:2px;height:2px;position:fixed;bottom:0;left:0}.capture-canvas{border:1px solid var(--line);opacity:.85;pointer-events:none;border-radius:8px;width:240px;height:135px;position:fixed;bottom:16px;right:16px}
