.dashboard[data-v-1d45a625]{max-width:760px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.header[data-v-1d45a625]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.header h1[data-v-1d45a625]{font-size:1.5rem;margin:0}.status[data-v-1d45a625]{font-size:.8rem;padding:.2rem .6rem;border-radius:4px}.online[data-v-1d45a625]{background:#22c55e;color:#fff}.offline[data-v-1d45a625]{background:#64748b;color:#fff}.card[data-v-1d45a625]{background:#f5f5f5;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.card h2[data-v-1d45a625]{font-size:1rem;margin:0 0 .75rem}.code-box[data-v-1d45a625]{display:flex;gap:.5rem;align-items:center}.code-box code[data-v-1d45a625]{font-size:1.8rem;letter-spacing:.3em;background:#fff;padding:.25rem .75rem;border-radius:4px;border:1px solid #ddd}.btn-copy[data-v-1d45a625]{padding:.4rem .8rem;background:#4f46e5;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.btn-copy[data-v-1d45a625]:disabled{background:#cbd5e1;cursor:not-allowed}.hint[data-v-1d45a625]{font-size:.8rem;color:#666;margin:.5rem 0 0}.label-sm[data-v-1d45a625]{display:block;font-size:.8rem;color:#666;margin-bottom:.3rem}.input-server[data-v-1d45a625]{width:100%;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.85rem;box-sizing:border-box}.preview[data-v-1d45a625]{display:block;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:6px;object-fit:contain}.device-list[data-v-1d45a625]{list-style:none;padding:0;margin:0}.device-list li[data-v-1d45a625]{padding:.4rem 0;border-bottom:1px solid #e0e0e0}.empty[data-v-1d45a625]{color:#999;font-size:.9rem}.notice[data-v-1d45a625]{color:#b45309;font-size:.9rem;margin:.5rem 0 0}.btn-primary[data-v-1d45a625]{width:100%;padding:.75rem;background:#4f46e5;color:#fff;border:none;border-radius:6px;font-size:1rem;cursor:pointer}.btn-primary[data-v-1d45a625]:disabled{background:#a5b4fc;cursor:not-allowed}.btn-primary[data-v-1d45a625]:hover:not(:disabled){background:#4338ca}.viewer[data-v-94206268]{position:relative;width:100vw;height:100vh;background:#000;overflow:hidden;display:flex;align-items:center;justify-content:center}.remote-video[data-v-94206268]{display:block;width:100%;height:100%;cursor:crosshair;object-fit:contain}.toolbar[data-v-94206268]{position:absolute;bottom:0;left:0;right:0;display:flex;gap:.75rem;padding:.5rem 1rem;background:#0009;color:#fff;font-size:.8rem;font-family:monospace}.badge[data-v-94206268]{padding:.15rem .5rem;border-radius:3px}.status-ok[data-v-94206268]{background:#22c55e;color:#fff}.status-err[data-v-94206268]{background:#ef4444;color:#fff}.badge-relay[data-v-94206268]{background:#f59e0b;color:#000}.badge-wait[data-v-94206268]{background:#3b82f6;color:#fff}.coords[data-v-94206268]{background:transparent;color:#ccc}.mobile-pad[data-v-fb8c93d0]{width:100vw;min-height:100vh;min-height:100dvh;background:#0f172a;color:#e2e8f0;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;user-select:none;-webkit-user-select:none}.connect-form[data-v-fb8c93d0]{width:100%;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));box-sizing:border-box;gap:.85rem}.connect-panel[data-v-fb8c93d0]{width:min(100%,390px);display:flex;flex-direction:column;gap:.65rem}.connect-panel h1[data-v-fb8c93d0]{margin:0 0 .75rem;font-size:clamp(1.75rem,8vw,2.35rem);line-height:1.1;text-align:center;font-weight:750}.field-label[data-v-fb8c93d0]{font-size:.78rem;color:#94a3b8;line-height:1.2}.code-input[data-v-fb8c93d0],.server-input[data-v-fb8c93d0]{width:100%;min-width:0;box-sizing:border-box;border:1px solid #334155;background:#1e293b;color:#e2e8f0;outline:none}.code-input[data-v-fb8c93d0]{height:3.55rem;padding:0 1rem;border-radius:10px;font-size:clamp(1.15rem,6vw,1.55rem);text-align:center;letter-spacing:0}.code-input.has-code[data-v-fb8c93d0]{letter-spacing:.38em;text-indent:.38em}.server-input[data-v-fb8c93d0]{height:3rem;padding:0 .9rem;border-radius:8px;font-size:.95rem}.code-input[data-v-fb8c93d0]::placeholder,.server-input[data-v-fb8c93d0]::placeholder{color:#94a3b8;opacity:1;letter-spacing:0;text-indent:0}.btn-connect[data-v-fb8c93d0]{width:100%;height:3.15rem;margin-top:.35rem;background:#4f46e5;color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:700}.error[data-v-fb8c93d0]{width:min(100%,390px);margin:0;color:#fca5a5;font-size:.88rem;text-align:center}.control-area[data-v-fb8c93d0]{display:flex;flex-direction:column;height:100vh;height:100dvh}.status-bar[data-v-fb8c93d0]{flex:0 0 auto;display:flex;align-items:center;gap:.5rem;min-height:2.25rem;padding:calc(.35rem + env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) .35rem max(.75rem,env(safe-area-inset-left));box-sizing:border-box;background:#1e293b;font-size:.78rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.room-badge[data-v-fb8c93d0],.direct-badge[data-v-fb8c93d0]{color:#22c55e}.relay-badge[data-v-fb8c93d0]{color:#f59e0b}.wait-badge[data-v-fb8c93d0]{color:#60a5fa}.preview-bar[data-v-fb8c93d0]{position:relative;flex:0 1 clamp(180px,52dvh,520px);min-height:160px;background:#000;border-bottom:1px solid #1e293b}.remote-video[data-v-fb8c93d0]{display:block;width:100%;height:100%;object-fit:contain}.pad-row[data-v-fb8c93d0]{flex:1 1 auto;min-height:170px;display:flex;align-items:center;justify-content:space-around;gap:clamp(1rem,8vw,3rem);padding:.75rem max(1rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));box-sizing:border-box}.joystick-zone[data-v-fb8c93d0]{width:clamp(135px,38vw,170px);height:clamp(135px,38vw,170px);position:relative;touch-action:none;flex:0 0 auto}.btn-group[data-v-fb8c93d0]{display:flex;flex-direction:column;gap:.85rem;flex:0 0 auto}.touch-btn[data-v-fb8c93d0]{width:clamp(76px,22vw,92px);height:clamp(76px,22vw,92px);border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;font-size:.92rem;font-weight:700;color:#fff;touch-action:manipulation}.touch-btn[data-v-fb8c93d0]:active{transform:scale(.94)}.btn-left[data-v-fb8c93d0]{background:#2563eb}.btn-right[data-v-fb8c93d0]{background:#dc2626}@media (max-height: 680px){.preview-bar[data-v-fb8c93d0]{flex-basis:clamp(145px,44dvh,320px);min-height:135px}.pad-row[data-v-fb8c93d0]{min-height:145px;padding-top:.5rem;padding-bottom:max(.5rem,env(safe-area-inset-bottom))}.joystick-zone[data-v-fb8c93d0]{width:clamp(118px,34vw,150px);height:clamp(118px,34vw,150px)}.touch-btn[data-v-fb8c93d0]{width:clamp(66px,19vw,82px);height:clamp(66px,19vw,82px)}}
