:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111214;--panel:#1b1d21;--border:#2c2f36;--text:#ebedf0;--muted:#8b909a;--accent:#6366f1;--accent-hover:#7c7ff5;--ok:#34d399;--danger:#ef4444;--warn:#f59e0b;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}.page{flex-direction:column;gap:1rem;max-width:1200px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex}.page.narrow{text-align:center;max-width:520px;padding-top:6rem}h1{letter-spacing:-.02em;margin:0 0 .25rem;font-size:2.5rem}h2{margin:2.5rem 0 .25rem;font-size:1.25rem}a{color:var(--accent-hover)}.warn{color:var(--warn);margin:0}.muted{color:var(--muted)}.small-text{font-size:.85rem}.bar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--text);font-size:1.25rem;font-weight:700;text-decoration:none}.status{color:var(--muted);font-size:.9rem}.status.ok{color:var(--ok)}.status.ok:before{content:"● "}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.card.center{text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.stack{flex-direction:column;gap:.75rem;display:flex}.stack p{margin:0}.stack.tight{gap:.35rem;margin-top:.75rem}.row.tune{margin-top:.75rem}.row{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.row.start{justify-content:flex-start;align-items:center}.col{flex-direction:column;gap:.5rem;display:flex}.grow{flex:1;min-width:0}.code-row{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.code{letter-spacing:.15em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:2rem;font-weight:700}.url{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.button{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:.7rem 1.4rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-block}.button:hover{background:var(--accent-hover)}.button:disabled{opacity:.4;cursor:default}.button.secondary{background:var(--panel);border:1px solid var(--border);color:var(--text)}.button.small{padding:.4rem .9rem;font-size:.85rem}.button.danger{background:var(--danger)}.input{background:var(--bg);color:var(--text);border:1px solid var(--border);font:inherit;border-radius:8px;padding:.7rem 1rem}.input:focus{border-color:var(--accent);outline:none}.code-input{letter-spacing:.2em;text-transform:uppercase;text-align:center;width:11ch;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.4rem}select.input{min-width:0}.meter{background:var(--bg);border:1px solid var(--border);border-radius:4px;height:8px;overflow:hidden}.meter-fill{background:var(--ok);transform-origin:0;height:100%;transition:transform 60ms linear;transform:scaleX(0)}.setup{text-align:left;width:100%;max-width:40rem}.setup summary{cursor:pointer;color:var(--muted);text-align:center;font-size:.9rem}.setup .guide{margin-top:1rem}h2.flush{margin-top:0}.guide ol,.guide ul{margin:0;padding-left:1.25rem}.guide .steps{margin:1.25rem 0}.guide .steps li{margin:.6rem 0;padding-left:.25rem}.guide .more{border-top:1px solid var(--border);padding:.6rem 0}.guide .more summary{cursor:pointer;color:var(--muted);text-align:left;font-size:.9rem}.guide .more p,.guide .more ul{color:var(--muted);margin:.5rem 0 .25rem;font-size:.9rem}.guide .more li{margin:.35rem 0}.guide code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.05rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.tabs{background:var(--bg);border:1px solid var(--border);border-radius:8px;gap:.25rem;padding:.2rem;display:inline-flex}.tabs button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.35rem .9rem;font-size:.85rem}.tabs button.active{background:var(--panel);color:var(--text)}.video{border:1px solid var(--border);background:#000;border-radius:12px;width:100%}.hidden{display:none}.log summary{cursor:pointer;color:var(--muted);font-size:.85rem}.log pre{background:var(--panel);border:1px solid var(--border);max-height:220px;color:var(--muted);border-radius:8px;margin:.5rem 0 0;padding:.75rem;font-size:.78rem;overflow:auto}
