*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center}.card{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 40px rgba(0,0,0,.1);text-align:center;max-width:500px;width:100%}.title{font-size:2.5rem;margin-bottom:10px;color:#333;font-weight:700}.subtitle{font-size:1.1rem;color:#666;margin-bottom:30px}.button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin:10px}.button:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(0,0,0,.2)}.button:disabled{background:#ccc;cursor:not-allowed;transform:none}.qr-container{margin:30px 0;padding:20px;background:#f8f9fa;border-radius:15px;display:inline-block}.status{padding:15px;border-radius:10px;margin:20px 0;font-weight:600}.status.waiting{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status.connected{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.video-container{position:relative;width:100%;max-width:800px;margin:20px auto;background:#000;border-radius:15px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.3)}.video{width:100%;height:auto;display:block}.video-placeholder{width:100%;height:400px;background:linear-gradient(135deg,#333,#666);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem}.controls{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.7);padding:10px 20px;border-radius:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.url-input{width:100%;padding:15px;border:2px solid #ddd;border-radius:10px;font-size:1rem;margin:10px 0;background:#f8f9fa}.url-input:focus{outline:none;border-color:#667eea;background:#fff}.instruction{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:10px;padding:20px;margin:20px 0;text-align:left}.instruction h3{color:#06c;margin-bottom:10px}.instruction ol{margin-left:20px;color:#333}.instruction li{margin:8px 0}@media (max-width:768px){.container{padding:10px}.card{padding:20px;margin:10px}.title{font-size:2rem}.video-container{margin:10px}}